I am still deciding between Miami and West Palm Beach but leaning towards the latter.
We don't talk a ton about Miami diving around here, but there are two really good diving operations in Miami that I highly recommend, which hit all the shallow and deep stuff in the area: Divers Paradise and ACE Divers. There is lots of variety very close to Miami/Miami Beach.
The upside to staying in Miami is that you have diving options very close to areas where you'd stay (the boats are close to South Beach/Downtown/Wynwood), you are an hour away from Fort Lauderdale and Key Largo, and you have lots of things to do for the other 20 hours a day when you're not on the dive boat...