Microsoft doesn't have to worry about being top dog in the next 10 years, or even the next 20. They've got that sealed, not by being the best software development company, but because they've figured out how to control a market; that once you get the masses used to something, they fear change. If I told you that there was this great operating system that did a few more things Windows couldn't do, but you had to relearn everything you knew about how to operate your computer, 99% of all people will say "To hell with that, I'm sticking with my BSODs!". Why? Because most people don't have the time or desire to relearn how to turn their machine on.
In addition, look at the back of most 3rd party software/game boxes. When was the last time you saw a great piece of software that didn't say "System Requirements: Windows based OS"? Its hard for a software manufacturer to develop programs that run on multiple platforms if there aren't enough people running those other platforms. They just cant justify spending the extra time/money writing that kind of code, since it will just jack the price of the product exponentially.
The whole thing is a snake eating its own ass.