Whether to use the ship's dive op at GC depends on several factors. First, it is a tender port, so if you do not have access to Royal Caribbean's loyalty program for priority tendering, using the ship's op may be your best option. If you can get priority tendering, and/or you arrive early enough to easily make the local dive ops departure times without priority tendering, you have a wide selection of dive operators. It also depends on your arrival and departure time with reference to when most dive ops depart and return. If it is a close call, again, the ship's op might be your best bet. Since I have priority tendering at GC, most of the time, I use Lobster Pot or their partners, Wall to Wall and Deep Blue Divers if arrival/departure timing are not an issue. They are located a short walk from the tender pier, and excellent dive ops.
Cozumel is much easier since the ship docks and you do not have to worry about tendering. But you do need to be aware of ship arrival/departure times with reference to when the dive ops depart and arrive. There are many dive ops that can work for you assuming arrival and departure times are not an issue.
You appear to be a relatively new diver, and if that is the case, the ship's dive ops should be just fine for you because there will likely be more inexperienced divers in that mix than on many of the "SB recommended" dive ops in GC or Coz, so the dives may be less challenging. Also, with the ship's dive op, you can concentrate on enjoying the dives without worrying about getting back to the ship on time. That can be very important if your time in port is a bit short, or if the weather might be iffy as the day progresses
Caution: If you use and off ship vendor, you really need to understand any differences between "ship's time" and local time. I am pretty sure that Royal Caribbean uses local times for arrivals and departures, but make sure so you do not miss the dive ops departure time or ship departure time because of time differences. Second, if you use an off ship dive op, leave your name, dive op, and phone numbers with Guest Services to help them track you down if you might be late getting back to the ship.