I was following the thread, and I see that you have followed recommended steps including manual failover before moving the primary instance, which is a good best practice.
Another important thing is to ensure that the destination subnet is marked as "Ready for Managed Instance" on the Azure portal, which I think you have done since all NSGs and route tables are in place.
Additionally, just sanity check that the inbound and outbound ports and the port range are open in NSG
Also, verify that the Microsoft.Sql resource provider is registered in your subscription. I have seen issue arise if the resource provider is not properly registered.
If none of these works, it might be beneficial to open up a support case with our support/escalation team.