Most software packages do not need to know what window system you are using, and when they do, it is almost always for non critical conveinces in OS integration.
>Linux gives you that chance, you can stick with what ever window system you want as long as your willing to recompile from source if it stops getting maintained. And maintain all of the packages that go with it, and maintain all of the utilities that adjust it, and maintain all of those 'throwaway' apps that you use from time to time. It wears on one to do so.
That rarely happens with popular software. The most common thing to have happen is your preffered distribution swithces window systems, in which case the actual maintainer of the system will continue to maintain it. Or in the case of Gnome, the old version will get forked and maintained by another group. The only time the problem you describe will happen is if the developers of the window system abandon it, and it is not a highly popular system. This is far less frequent than the OS maintainer deciding that the software is not the one true way.