You might want to check with Canonical about how easy writing a useable windowing and compositing system is.