I hate Gnome, but I know people like it. I'm happy that both KDE and Gnome exist, because it also means the people who made the decisions about Gnome's direction won't be making those same decisions about KDE.
Anyway, even with the different philosophy towards users, that could have been done in a single project (i.e., Gnome3 can be a KDE skin), or two closely-related projects (i.e., Gnome3 is a fork of Plasma but otherwise shares the same libraries), reducing a lot of duplicated effort. Instead, we now have 6 or more different desktop environments for Linux and potential new users look at the mess and ask, "WTF?". Or they try one and hate it, and when they ask how to switch to a different one to try it out, the answer is "reformat your hard drive and install this other distro that actually cares about that DE", or "follow this list of command-line instructions and hope it doesn't break because your distro doesn't care about supporting that DE".
You're right that fragmentation can be an issue - but it's often a people problem, not a technical problem: if I have strong feelings on how a particular piece of software should work, and it's made clear that the project leads disagree and any patch to implement such will be rejected, I'm not likely to invest hobby / recreational development time in any other aspect of that project. (That's not meant as a criticism of the hypothetical project leads - merely an observation that when people work on project for the enjoyment of it, rather than for a living, the bar is raised massively in terms of how much a developer needs to "believe" in the project and the direction it's taking.)
There's nothing "ironic" about it at all. For many, many years, X.org was the only real display server that anyone used, after they all abandoned XFree86 for good reason. Wayland didn't come about until later, and even then, *it was made by the same people*. It was never a competing project.
>if I have strong feelings on how a particular piece of software should work, and it's made clear that the project leads disagree and any patch to implement such will be rejected
This is understandable, but frequently not the case. The KDE/Gnome fiasco, for instance, all started because of an argument about a license.
>merely an observation that when people work on project for the enjoyment of it, rather than for a living
Here again, it's frequently not the case. In the KDE/Gnome fiasco, many of the devs there were employed full-time by companies like RedHat to work on it. So it was really political.
There's a few counter-examples of truly exemplary FOSS software that achieved a dominant position and managed to avoid too much fragmentation so that they became largely adopted: the Linux kernel, PostgreSQL, X.org, etc. But for many others, too many wars have really caused the whole Linux-on-the-desktop dream to not be achieved to the level people hoped. GIMP is one of them, but the Gnome/KDE debacle is probably the biggest.