Wayland as a protocol was designed around CSDs, protocols for SSDs came years later
Having the client control the CSDs simplifiies things for the compositor and apps
The compositor has less things to implement and test
Modern apps tend to prefer CSDs anyway since it provides more flexibility, very common on MacOS and Windows
It’s difficult to coordinate things between the client and compositor.
Something that annoys me about KDE is that they do this headerbar look where the top part of the application will match the color of the the titlebar. However, the top part of the application is drawn by the application and the titlebar is drawn by the compositor. But when the color changes (such as going from unfocused to focused), they do not update at the same time, so for a frame or few the top part of the application is a different color than the titlebar. That wouldn’t happen under CSDs.
The for argument is basically the following