In the last 5-6 years, desktop hardware has stabilized *a lot*, and Microsoft has done nothing to improve the bottom-line experience of it's product users, so there's been no real reason to upgrade (see the desperation with which many people cling to XP; Windows 7 is nicer but it's not really, truly better).
Microsoft, though, cannot see this. They - not the individuals, but the corporation - cannot see, are incapable of seeing, that their products are not remotely the best they *can be*.
Consider Outlook/Exchange. Corporations use Outlook not for it's mail services but for it's integration of key services. And people hate it with a passion. Microsoft have worked hard try and create the impression that PC is King and Microsoft are King of the PC, and frankly nobody actually wants Microsoft software.
It's like the odd-smelling creepy guy who comes with the movers; you'll let him in, you'll be polite, offer him a drink maybe, but you're not going to invite him back and, no, thanks, you really don't want to visit his parents.
People are turned off by MS products because they have to work with them, and that's enough to convince you to use something else at home.
Metro... Ok, I know, this is slashdot, people here have to hate on Metro. I actually had a Windows 7 Phone, and aside from the lack of apps after MS announced they were doing Win 8, I really enjoyed it. It was lean and mean, but unlike W8's UI, it was a back to basics approach. It wasn't about *removing* UI chrome, it was about starting over with the assumption E-V-E-R-Y-T-H-I-N-G that gets displayed is an interaction hook/button. If you can see it, you can tap it or press it, and it will do something.
The apps that sucked on W7P were the apps that weren't raw Metro apps.
Again, MS couldn't see it, and W8 is a castrated b*****d version of it.
Unless Ballmer steps down in the next 6 months, this is it people - this is when Microsoft died :)