Easy to get to Trunk Bay... Get off the ship as early as you can. Take a taxi to Red Hook (about 15 minutes). Take the ferry to St. John (about 20 minutes. See FERRY SCHEDULE at bottom of post). Take a taxi to Trunk Bay (about 5 minutes). There are PLENTY of taxis waiting at the terminal. Do it on your own. Very easy, less expensive, and you will have more time on the beach. We were on the beach when all of the Disney excursion passengers had to pack up and head back. We were able to stay for about another hour. I was worried about doing this on my own before our cruise, but we decided to give it a try. It was much easier and quicker than we thought it would be. Just make sure you know when you need to be back on the ship, and make sure you take the ferry that will get you back in time. I think we had to be back on the ship by 5:00 and we took the 3:00 ferry back, which gave us PLENTY of time.
Trunk Bay is AMAZING. If you have never been to a beach before, then you are in for a treat. We spent the day on Trunk Bay during our first
Disney Cruise, fell in love with the beach and island, and when we returned home we bought a timeshare on St. John, so now we go back there every year. The last time we were there we were talking to a group of people who were staying on St. Thomas and visiting St. John for the day. We asked them what there was to do on St. Thomas. They said the only good thing to do while staying on St. Thomas is to go to St. John.
FYI
http://travel.discovery.com/convergence/beaches/2005/us/trunkbay.html
Here is a photo album I found of St. John with BEAUTIFUL pictures of the beaches, including a bunch from Trunk Bay.
http://www.pbase.com/rcplanefan/st_john_2005
FOUND THE RED HOOK FERRY SCHEDULE:
Red Hook
Rates: One-way, $5/Adults and $1.00/Children under 12.
Time: 15 to 20 minutes
Leaving Red Hook, St. Thomas
6:30 am, 7:30 am then hourly from 8:00 am to Midnight
Leaving Cruz Bay, St. John
Hourly from 6:00 am to 11:00 pm