Microsoft has an execution problem. Plain and simple. Their competitive advantage for Windows and Office are huge, I'm not arguing that. However, if you look at the numbers you'll see that they are in decline.
Having an execution problem, long term, kills companies. No matter how great their advantage may be.