Theory versus reality. The theory of federated XMPP is exactly as you said.
The reality is much more of a mess, with multi-device issues -- routing issues -- federation issues, not to mention a ton of non-XMPP messaging services.
And most importantly, no identity system which end users know about. (i.e. people know about email addresses, but Facebook users use XMPP without knowing how to refer to people on other services)
All these problems were applicable to email in the past as well. It took a lot of iteration to get everything working as smoothly as it appears to work now, provided we ignore the massive issue of spam and almost total inability to make it secure.
No, we do have this capability: use XMPP.
In fact, XMPP is functionally enough to completely replace email, and does also serve as IM.