The point of this exercise wasn't really to have a formally verified window manager, it was to document what it's like to make formally verified software. As a modestly complex program and one of the most well-known Haskell programs, xmonad was a good choice.
And while I agree that a formally verified X window manager seems a bit silly, a formally verified Wayland compositor would be a great idea given their broad scope of responsibilities.
If you do it right, you only need to verify a few key components with interface conditions on how the rest should use them. This approach was taken in high-assurance security to build window managers that prevented leaks between apps or login spoofing. Nitpicker GUI is a modern example of that at least architecturally.
PDF: https://web.cs.dal.ca/~nzeh/xmonad/Navigation2D.pdf
Module: https://hackage.haskell.org/package/xmonad-contrib-0.13/docs...