I agree and it's kind of a double edged sword.
Microsoft takes huge pains to preserve compatibility as much as possible often to the detriment of being able to improve in certain areas. Looking standing bugs won't get fixed because "this can break (insert some legacy product)". This is great because it means most stuff will effectively work forever, but it also hobbles the ability to innovate without compromise. Raymond Chen has some great blog postings on this. (Of course you used to work for Microsoft if I'm recalling correctly so I'm sure you know all of this already.)
Apple on the other hand says "hey, you want to use that 10 year old software nobody supports anymore, lol that's nice." They will do heroics for compatibility when needed as a forcing factor (Classic Mode, Rosetta) but after a while they pull the plug and your screwed. I admire this in some ways as it does take some courage (not in the headphone jack sense) to be willing to say "screw you and your compatibility, we need to move forward" knowing full well a lot of stuff will break.
It's especially hard with Apple because at least on Windows is very easy to virtualize old versions of Windows for when you really need compatibility. Apple doesn't really give you this.
That sure was a lot of words and I'm not quite sure what point I was trying get at except to say it's tough to balance compatibility and innovation.