To enjoy Roatan, one MUST get out of the "cookie-cutter" shops. You don't need to book through the ship to get an island tour. Rent a taxi, but AGREE IN ADVANCE ON THE PRICE. Spend time on the beaches (West End or West Bay); do a world-class zipline (also at West Bay); tour the entire Island (It's only about 30 miles long, and the eastern half of the island offers amazing views!). Visit the Arch's Iguana Marine Preserve with thousands of iguanas running loose.
Since Princess Lines stop at Mahogany Bay (nothing nearby except touring the shops right at the dock), there isn't a lot to do in the immediate area. Walk outside the "caged" area; find a taxi; and get the driver to recommend what to do. Get a few people together and rent a van with a local Islander, who will happily tell you about the fascinating history of Roatan.
I had hoped to go to the Mayan ruins at Lanai... and did so. But the ship was slow in getting passengers to shore. So, we got a late start... rushing both TO our tour (saw nothing else) and ON it (because of the small "window" of time we had ashore). The Lanai ruins were quite a distance (by boat) from the dock, and the tour company's boat not the fastest.
I've visited several Mayan ruins in a number of countries, and I really enjoyed this one too... except when we were "cutting it close" on return to the ship. We made it back "in time"; but the ship had pulled-up the ramp through which we were to re-board the ship, and it took about 20 minutes to get them to lower it.
We'd been to Cozumel before (SCUBA diving); so we chose a tour of the island with a taxi with whom we negotiated a price for 4 of us. The best part of the island excursion was a tour of a local tequila factory. The "taxista" also stopped to let us shop briefly before we returned to the ship.