Azure SQL DB vs Azure managed instance
It really does come down to what you need and why you need it. Managed Instance has a single, huge, strength over Azure SQL Database, cross-database queries. If you need to query between databases and you don't want to rewrite the code, then Managed Instance is the way to go. There are some other advantages such as having SQL Agent (easily replaced with Azure Automation) and some other behaviors, but the cross-database query is the huge driver. 

I can't answer the geo-replication question because I haven't tested that from Managed Instance, so I'm not aware of the level of support there.