I wrote such a utility, and I must say it was painful.
The basic idea is that you can use the XSL's (there's one for each view) from the unpacked XSN, and use the .NET XslCompiledTransform to generate HTML, and then use any of the HTML-to-PDF components out there to finish the exercise.
Beware that there are many gotchas and InfoPath proprietary XSL extensions used in the stylesheets, and you'll need to come up with a way to deal with this situation. Also, you would have to handle secondary data source lookups in your own code.
Hope that helps.
P.S. -- Alternatively, I may be able to arrange licensure of our source for this utility as a starting point.