We have dived in Cozumel, Grand Cayman, Belize, Roatan, Curacao, Bonaire, Grenada, Costa Maya, and St. Thomas on cruises, sometimes using the ship's dive op and sometimes using independent ops.
Of these, the only ports we have used the ship's op exclusively have been GC (Don Fosters) and Belize (Hugh Parkey), and both ops were excellent. We used the ship's op because the ships tender at those two ports, and getting off the ship in a timely manner can be problematic if you are not on a ship excursion. In addition, in Belize, Hugh Parkey picks you up from, and returns you directly to the ship. Both ops have facilities to rinse your gear.
Coz is the only port where I was not happy with the ship's dive op (Sand Dollar), which in my experience is the only one that I felt shortchanged us on dive time. There are so many other independent dive ops to use, so this is a place where you have a lot of options. We have used Christi's Blue XT Sea Divers in Coz and were very happy with them. Aldora also offers dives that are compatible with cruise divers.
Roatan-have used AKR which is the ship op and Barefoot Divers (independent op). Both were excellent and have facilites to rinse you gear before you go back to the ship.
Bonaire and Curacao have used ship's op or just shore dived. No complaints with the ship's op Dive Friends Bonaire or Ocean Encounters at Lions Dive in Curacao. You can shore dive in Bonaire from any of several dive resorts and Ocean Encounters if you call ahead to set it up.
St. Thomas is another port where you have better options than the ship's dive op.
Costa Maya- have used Dreamtime Divers (ship's op) who were excellent, and one independent op that was less than satisfactory.
Grenada- used Aquanauts and were very happy with them.
With the exception of Sand Dollar in Coz, the dive times when using both ship's ops and independent ops were based on air usage of the divers in your group, but have generally been 45-58 minutes in length. You go down and come up as a group, but if you don't want to deal with that, hiring a private dm is an option to let you dive your air.