We went with ceviche tours. Tell John and Captain Cuko I said hello if you choose them. I definitely recommend them. I should also say that we have now been out with them 2 times this season, both incredible experiences. That being said, we also reserved the boat for a private trip on both occasions and there were only 4 of us. We did this to have the most time in the water as possible. It is more expensive but if you want the best opportunity for great footage there is no other way to go. Boats do have limited time out on the water and there is no guarantee how many whale sharks will be present when you actually get it. Considering the average boat can have 10 people on it, you may limit yourself on time. If you just want the experience of swimming with the whale sharks (breathtaking/incredible/awe inspiring) then one of the larger occupied boats would be fine. It really comes down to how much you are willing to spend vs your goals of swimming with massive sharks. The shots from my initial post were all taken within the first 20 minutes in the water by my wife or myself. I am just now editing the media from our 2 trips and would go back in a heartbeat if I could get the time off my real job.
If you are staying on Isla, I also suggest you rent a golf cart and travel around the whole island (not a long trip). Stop at the turtle rescue and the mayan ruins. If you head out early (just after dawn) the photographic opportunities are endless. We probably pulled over 20 times for landscape shots alone (tripod recommended). And even if you are not that interested in the photography aspect, the scenery is well worth the trip.
We have already made plans to go back in winter for Sailfish and Bull Sharks.