Zwei Dinge fallen mir noch auf:
Du wartest nach dem Navigate() nicht ab, bis die Seite geladen ist. Theoretisch kann es passieren, dass du auf das falsche
DOM zugreifst.
Und du verwendest zuerst Forms.Item(0) und jetzt Forms.Item(1) um das Submit auszuführen!
Du könntest die Anmeldung auf einem lokalen HTTP-Server mit phpinfo() durchspielen um den Dingen auf die Spur zu kommen.
Oder du verwendest einen lokalen Proxy, den du belauschen kannst.
Vielleicht müssen ja auch nur noch zusätzlich Cookies akzeptiert werden?
Wie hast du die Eigenschaft Silent des WebBrowser Controls eingestellt?