Linux user since Red Hat 4.0
I agree that it's a horses for courses market out there, and for some people, Windows is the Right OS.
Sadly though, Windows being the proprietary soup that it is, it makes it damn near impossible for the end user to debug.
I don't envy Microsoft's position here. They've got literally thousands of reports, all with various device drivers and user applications, many of which were developed in secret, most of which were developed in isolation. All of which can be interacting in strange and unwanted ways.
Yes, the hardware abstraction layer is designed to address some of these needs, but it still makes it one big mess for them to maintain. It's like the numerous medical specialists prescribing various drugs to a patient, leaving them with a cocktail of pills no one is sure about. I'm not surprised that things break.
I guess Microsoft have more power to coerce co-operation with the companies involved, but I dare say it does sap a lot of time and resources simply because the industry are used to behaving like proverbial cats.
The open-source solution to the problem isn't perfect either, and some companies run a mile from it, but I think the more open and collaborative approach is helping in this regard. I haven't had a breakage on a Linux machine that has seen me having to completely reload in a very long time.
Windows on the other hand, I've had installations spontaneously develop faults that have taken days to rectify.
Linux costs me my time to maintain it. Windows seems to cost both my time, and significant money, thus for me it's an easy choice.
I think that Microsoft could do well to look at how things like device drivers and such are managed in BSD and Linux… which in doing so, could make their lives easier, and improve the user experience for everyone. That doesn't mean open-sourcing the Windows OS (although that could have some good benefits), just co-operating more closely with the manufacturers and software companies to better co-ordinate efforts.