Interesting, monad-classes does seem more potentially powerful - I've kind of pushed the limits of these parts of the type system just constructing this. It's fantastic that it asymptotically reduces the number of typeclass instances required.
The IncoherentInstances in extensible-transformers bothers me as well - especially since I'm not very familiar with the unhappy cases of IncoherentInstances.
One big problem with extensible-transformers is that it doesn't expose the inner Monad itself (mainly because there isn't one), which creates an issue for code that needs its transformers to transform more than just "something"
The big plus (and minus) for extensible-transformers is that it can lift into the existing transformers stacks - it doesn't require rewriting the effects like extensible-effects or monad-classes. It's bound by the same pros and cons as transformers, but it's easy to integrate into existing code.