Why compatibility? Or inertia for that matter? Switching DEs in Linux is generally as easy as installing a package and switching the DE at login, and you can use any app compiled for a certain toolkit in any other DE. The default choice is usually done for either pragmatic or preferential reasons (Developer preference, easy of upstream collaboration, flexibility, stability, bug fix schedule)