The reason I don't blame MS entirely for this is because it's clearly a trade-off. In return for the risk of unreliability, they got a vast increase in the number of hardware manufacturers willing to play in their ecosystem, precisely because MS can be fairly hands-off. This drives prices down, and increases the size of the market-place.
Where I do take issue with MS directly is that despite consciously being in the driving seat of an ecosystem like this for so long, it's taken them years to successfully isolate the user from buggy drivers. They control the OS, so they control the ability of a manufacturer's bug to affect the user. It's not a foregone conclusion that a screwed-up driver must inevitably lead to a bluescreen, or anything like it.