Most people can't think more than one step ahead. They will jump on short term advantages, even though they will inevitably turn out to be major long term disadvantages. People evaluate software based solely on numbers of features. It was intended as a way of allowing applications to be constructed together out of components. People simply don't learn from past mistakes, whether they are their own or someone else's.
Stupidity is self-perpetuating.
People switch to a Microsoft clone product B from a competing company's innovative product A, citing that A is inferior and less feature-laden than B. Microsoft gains so much market share that A goes out of business and innovation comes to a grinding halt, and then everyone is back to having an inferior product again. People will complain about the turd in someone else's back yard even though the one in their back yard smells a lot worse. And since stupidity generally breeds only more acute stupidity, this situation isn't likely to change. No matter how hard you try, you can't make a stupid person aware of his own stupidity.