You are analyzing the wrong thing: email as a hosting mechanism isn't exactly federated, it is the email addressing scheme that is federated. You happen to be self-hosting your domain (which is part of a different system: DNS, which is more hierarchical than federated, though I have often put it in the latter category), which allows you to move around and even delegate to third parties your email host (which is really what you are doing: federation isn't what is allowing you to delegate your hosting provider, as your hosting provider works for you and you alone), but at the email layer that's because you did the super-rare thing of owning your own domain name and knowing how to have an MX record.
The switching cost for the average user of a federated system--one which has experienced lock-in on someone else's naming system, such as by using a gmail address or having a mastodon account on a large instance--is brutal. There is an advantage here that that is even possible, and there is then competition between these inter-compatible providers, but there are still many reasons why users tend to end up wanting to end up attached to larger namespaces (all of technical, political, and economical). Hell: even some of the smartest people I know seem to have an @gmail.com address (or worse: have let their identities become owned by a company they happen to work for) no matter how immediately "amateur" that makes them look to me :(.
(I gave a short "talk" about this at the Distributed Web Summit a few years ago, but the video they took has an over-an-hour audio sync issue and I haven't taken the time to edit my own copy yet.)
Email federation is more than just the addressing system. Even with a consistent address, your host still needs to be able to send and receive SMTP messages to participate in the ecosystem.
Address lock-in is real but doesn't fully negate the benefits of federation. Even if you don't control your address's domain, you can switch providers without losing the ability to send and receive email. There is extra cost in pointing your bank account to your new address, but it is possible. If your bank communicated to you via a non-federated protocol like WhatsApp, switching would be impossible.
The switching cost for the average user of a federated system--one which has experienced lock-in on someone else's naming system, such as by using a gmail address or having a mastodon account on a large instance--is brutal. There is an advantage here that that is even possible, and there is then competition between these inter-compatible providers, but there are still many reasons why users tend to end up wanting to end up attached to larger namespaces (all of technical, political, and economical). Hell: even some of the smartest people I know seem to have an @gmail.com address (or worse: have let their identities become owned by a company they happen to work for) no matter how immediately "amateur" that makes them look to me :(.
(I gave a short "talk" about this at the Distributed Web Summit a few years ago, but the video they took has an over-an-hour audio sync issue and I haven't taken the time to edit my own copy yet.)