There are some good spots to dive in Aruba but you must know where to go. Aruba is great for wind surfing though. The island is rather flat and always windy.
St. Thomas has some nice diving but you need to travel a bit. Magdalena Bay is very picturesque but can get crowded and the diving is not phenomenal. You can take the ferry from St. Thomas to St Johns (about a 30 minute passage as I recall) and there is a FABULOUS place to dive there. There are cement markers under the water to guide you. It is the only place I have seen some larger squids. (All the cruise ships can set you up for the transportation to and from St Johns.) However, I must tell you the jewelry shopping in St. Thomas is FABULOUS! I only dive every other time I'm there because the jewelry pricing is very, very low and really excellent quality.
Of course, if you are on a BIG cruise line, where ever you go you will be swamped with tons of people. I like the smaller ships where you can go to smaller islands that aren't overwhelmed.
My two favorite places to dive are (1) the Pacific side of Costa Rica and Panama and (2) Bora-Bora!
Whereever you go, have fun!