MIA is really bad for connecting. Potentially very long lines for immigration, then another wait for customs. Rechecking bags is easy. If you are not a US citizen and don't have global entry I would leave at least 3 hours between the flights - and that might not be enough if you are unlucky.
Connecting in Europe or South America is much easier.