Xcaret was probably one of the more impressive excursions I've done. I've done excursions around the Yucatan, Jamaica, Aruba, Punta Cana and Hawaii, and Xcaret will always be one of my favorites. When I went, there was one fee that included the admission to the ecological park and snorkel equipment but did not include a swim with the dolphins.
I don't think I'd consider doing it on my own. When I went there, I felt we were being taken to the middle of nowhere. I was glad I was on a tour bus. The underground snorkeling was the best. There wasn't as many fish as in the ocean by a reef, but it was just really different. As I said, there is a fee to swim with the dolphins. However, for no extra charge you can snorkel in the cove by the dolphin area and see them. There's many other animal habitats worth seeing as well. The only thing that disappointed me was that the brochure mentioned mayan ruins. There is a very small area of ruins there, but it wasn't impressive.
Although I haven't done this, I've always wanted to do the tour that combines snorkeling at Xel Ha with touring the ruins at Tulum. I don't know if Royal Caribbean offers that tour.
Xcaret is a great excursion, but if you want to see ruins, you'd be disappointed in Xcaret.
I went to Xcarat about four years ago and possibly I just picked a bad day, it was extremely crowded and the snorkeling was disappointing, they push the issue that you can't use sun tan lotion because it ruins the water content, they are right! I couldn't see anything. They have a cave tour which allows you to swim with the currents, it was fun but again, too crowded a lot of crying babies because they were scared and cold (I thought it was a bit foolish to bring children on that) I went to Tulum/Xel-ha last year and that was much better.
I imagine it could get pretty crowded there. Our tour bus arrived right when the park was opening, so maybe we didn't see the crowds. The underground snorkeling wasn't crowded at all. In fact most people wouldn't do it because the water was so cold. That was fine by me, I got used to the water very quickly. And I don't remember seeing any children, that does sound foolish.