I have a bunch of users (friends and family) on a bunch of different domains. It’s honestly not so bad but yeah, you need a decent dedicated service.
Migrations aren’t simple but aren’t that complicated either (just did one last year).
I mainly need to copy their email over but it’s also a good moment to check they’re using decent passwords and to have them freshen it.
I also need to update their webmail and IMAP/SMTP URLs in their bookmark/email apps but I’ve been playing with DNS CNAMEs for this purpose and it’s mostly working ok (aliasing one of my domains to the provider’s so I only have to update the DNS which I do anyway for a mail migration).