If you prefer with lots of plankton snot in the green water, then Holbox is a great place. If you like blue water and the chance to see large numbers of sharks together, then Isla Mujeres is the better choice. Besides, it's a nicer location and a shorter trip from Cancun.
The boat most often chartered by photogs is the Lilly M
If they are booked, contact Ruben Pena at seahuahua@hotmail.com. You can charter his boat, a decent Boston Whaler, for the trip. Ruben is a great guy.
BTW, chartering is the way to go. You can leave when you want and limit the passengers. Only two people plus guide in the water at once. If you do the tourist routine, you could end up rotating in and out with 8 other people at 5 minutes per rotation, which is absurd. You have to leave at 2:00pm. Many of the tourist boats are gone by 1pm. Another reason to charter the boat.
Edit: If they can't find the whalesharks in blue water, they can always take you to Contoy for a green water encounter.