Two HTTP 401 responses is normal when using NTLM authn, that's the way IEHTTP works.
First it tries an anonymous request which generates the first 401 request. The reponse includes a header that says "try with NTLM".
Then the NTLM procedure (which is a challenge/response method) requires one 401 and finally a 200. If you want more details here's a good link: http://davenport.sourceforge.net/ntlm.html#ntlmHttpAuthentication
If you switch to Kerberos for instance, you will get one 401 (the anonymous request) and then a 200 (when the kerberos token is sent).
(I know this doesn't answer your question completley, but that's why you get two 401's.)