Almost every caribbean island will have shopping, snorkeling, and fun things to do. They all just have slight variations on each of them.
For example, Honduras (Roatan) has some of the best snorkeling around, but not great shopping.
The Mexican ports have great cultural things to see (e.g., Mayan ruins) and lots of other fun things.
I've been on a couple W. Carib cruises, a Bahamas cruise, and we're doing a S. Carib in a few weeks.
I think you need to step back and first figure out what price point you want to eliminate a few cruise lines, and then figure out whether you want to leave from Florida or Puerto Rico.
Then start looking at itineraries. Do you want a port heavy itinerary (the heaviest you'll get out of FL will be 4 stops, but 3 is the most typical)? Do you want a fabulous ship (consider Allure or Oasis)?
I would highly suggest going to
www.cruisecritic.com for great reviews and info on every single port there is.
Personally, I'm tired of the Caribbean....you can get everything there is on the islands right here in Miami, and much better shopping