I like Toad Data Modeler for this. It reverse-engineers Microsoft SQL Server databases (and other brands of databases too), but more than that, you can start making your modeling changes inside the tool and it'll generate change scripts.
If you use somebody else's tool, make sure that you can round trip changes - meaning, if you put all the time and effort into getting your documentation right, and then you change the database inside SQL, can you re-import your changes from the database without overwriting your work in the documentation tool? Most of 'em don't do that, but Toad Data Modeler does.
(Disclaimer - I work for Quest. I used this program before Quest bought it, though, and always loved it.)
http://www.quest.com/toad-data-modeler/