Just implemented something similar in one of my projects using wkhtmltopdf (webkit based)
I'm rendering views or partial views to strings, writing them to temp html file and sending starting the exe in a new System.Diagnostics process..
The pdf's look absolutely awesome, it works with external css sheets and everything.