The main draw of xmonad is that you can modify pretty much everything, as the config itself is a Haskell file (the entire thing is written in Haskell). There are tonnes of modules to use, you can define your own window layouts and add whatever functions you can dream off - I haven’t seen any other window manager offer this kind of freedom (with the added joy of learning Haskell!).
As for the second point, about half a year ago, they started doing exactly this. Rewriting xmonad for Wayland. Guess I’ll sit this one out.
The kernel is probably too large to rewrite the whole thing at once. This could lead to a future without any new C kernel devs, leading to stagnation, while the Rust kernel could be many years away from being finished. (Assuming we actually move away from C.)
At that point you might as well just start an entirely new kernel and hope it is good enough to eventually replace the Linux one once all devs are gone. Kinda the X11 and wayland thing.