I think the CSD initiative is fine if it's a choice. However, I can't choose to not use GNOME on behalf of my users. Libdecor is a bad and C-centric solution to the problem. I know Mutter is designed in such a way that makes this hard; that was a pretty big misstep in my opinion.
Likewise for other things that GNOME Project pushes.
Here is a great example. Wayland has a protocol for inhibiting idle called inhibit-idle. GTK won't use it. Instead, they want you to use a DBus interface from the enormous XDG Desktop Portals API. They refuse to have any kind of discussion about it. End of story.
https://gitlab.gnome.org/GNOME/gtk/-/issues/2202
This pattern repeats for even silly things. Like the size of the mouse cursor on HiDPI screens? No problem bro, just use this bespoke DBus API.
This is all assuming you want to use DBus. Why? Wayland is already the thing that you speak to talk to the display server. Why use another protocol for basic functions like this? If DBus is so great, why do we even need the Wayland protocols in the first place? (Dbus is not great.)