Thanks for the detailed information, that's very interesting and a great assessment. We wouldn't have found this using all of these variables, especially the different Windows desktop version
I suspect this might be a bug in the underlying libraries? We just use an HttpListener and a HttpWorkerRequest, both which should handle all of this, in the simplest way possible. I'll ask around and see if anyone knows.
But I guess, at least you found a work-around which I'm glad to hear!