Today I found a strange behavior with the WebServiceClientProtocol class in WSE 3.0. I had it configured to use a localhost address, but UseDefaultCredentials property returned false anyway. If you do the same thing with the standard SoapHttpClientProtocol class it will return true. I cannot find any explanation for this difference in behavior.
In my case, my solution was to add a configuration property that let me set the value.