For one, Microsoft doesn't release a new kernel every 6 months (far from it), so the breakage doesn't occur every 6 months. I don't want to sound like I am defending them, but there are parts of their strategy that are trruly superior to the Linux model in my opinion. We cannot simply say "everything that Microsoft does is bad". Monopoly is part of their success, but a large part of it also is that they did some things right. Having a stable API is definitely one of them.
That pains me because I am Linux developer and user for both practical and ideological reasons (I am willing to suffer a little pain in the cases when Linux is inferior).
Plus, I am referring to source level API, and not so much keeping it completely static, but approaching the changes formally by versioning and formal documentation.
Not having a stable API makes life a little easier for the core kernel developers, but much harder for everybody else. Plus, in the broader picture, I am sure that it is an insurmountable barrier before "Linux" on the desktop.
Heed my words: Linux will never succeed on the desktop without a stable driver API. I wish it wasn't so.