Mostly technical. But, I'll try to be a bit charitable.
1) A lot of architectural decisions that made sense in 2008 are less optimal today.
Everything language-wise was C/C++ while today lots of different languages want to interface to your display system. The input system was completely hamstrung--things like gestures and multi-touch and things like that just weren't in anybody's brain yet. (Wayland started just after the first iPhone was introduced). And RT_PREEMPT still isn't a thing for Linux while both Windows and macOS underwent major surgery to allow real-time paths for things like audio and interaction.
2) Desktop composition semantics are not exactly easy to define.
Windows has certain definitions, but even it falls back to pure CPU software rendering in a lot of cases.
3) Weak support from graphics card companies
Windows relies on a LOT of driver hacks so everything goes through the compositor on really fast paths. That's a lot of work that nobody really has the bandwidth to do on Linux.