Canonical decided to write their own Mir display server instead of adopting the existing Wayland. They stated their reasons for doing so, but I'm not convinced they really had to start their own project instead of modifying Wayland.
The nice thing about Wayland is that, because all the real work is being done by things like evdev, KMS and widget toolkit the actual display server is *much* simpler than Xorg. Weston is only a reference implementation of a Wayland compositor, and it's expected that desktop environments will implement their own that work the way they want them to (for example, work is underway to let KWin function as a Wayland compositor).
So it's not even a question of having to do some hackish modification of upstream to get their own way - they could have just implemented Wayland in Unity's WM, like other major DEs have done. The concerns about running on Android drivers are weird - the Wayland protocol doesn't care how you actually do your compositing and display the finished screen (there is already a modified version of Weston for the Raspberry Pi, which uses the device's video scaling hardware to do the actual composition work), so a seperate client protocol (as opposed to rendering backend) makes no sense.