Your Process will exit when it has started the Print task - that doesn't mean that the print operation is complete, that's down to the actual code that "print" uses to transfer the file to the printer.
Since the Windows print command only transfers text files, why not do the print yourself via a PrintDocument class instance instead, and gain a whole load of control over exactly what and how it is printed?
PrintDocument Class (System.Drawing.Printing)[
^] The link includes a basic example.