I have found a solution to the faxing problem I have been having with InfoPath. Here is what I am doing.
I have made a separate Windows Application in C#, and I have a fully trusted form in InfoPath. I also installed drivers for a "Print to Tif". And I made a webservice that will store all my fax data into my SQL database.
On the print to tif you can specify where you want the file to be stored and you can also hide the window that comes open when it prints so that the user sees nothing.
On my print View I have a Fax Button. The first thing it does is submit to the webservice things like fax number that was inputted and who the fax will go to and things like that. Then I run XDocument.PrintOut() to print my print view to a tif. file on the local computer(and as noted before I adjusted the settings so the user doesnt see anything when this happens). Then I run that Fax App. from my Jscript Code and it grabs the tiff file that was just printed to a folder on my computer and sends it to the server to be faxed, or you can fax it directly from the local computer.
Just let me know if you have any questions on this. Thanks