I believe that UseShellExecute must be true to get the WindowStyle to work.
Ignore the MS documentation at
ProcessWindowStyle Enumeration (System.Diagnostics)[
^] which says the exact opposite!
It is also possible for an application to be written in such a way that it ignores a style request from the shell.
Alan.