We have vacationed on St. John several times and done St. John on our own from a
Disney Cruise once.
We were the first ones off the boat and caught the 9:00 Red Hook Ferry. When we arrived in Cruz Bay we quickly got a taxi to Trunk Bay and we were settled on the beach before 10am. We planned on taking the 2pm ferry back to Red Hook so we packed up from the beach around 1pm to grab a taxi back to the ferry dock. Unfortunately right as we were packing up, we had a medical emergency. We still made the 2pm ferry, but ended up then having the taxi from Red Hook drop half of our party off at the St Thomas hospital and the rest of us went back to the ship to quickly pack up all of our things and debark the ship before it had to pull out of port. We ended up flying home from STT the next day.
Anyway, doing STJ on our own would have worked out just fine without the emergency. 9am ferry over, 2pm ferry back. You do spend quite a bit of time driving to Red Hook, however, and the Disney excursion would leave right from the cruise terminal, so it would be a longer ferry ride, but at least you're on the water.
I am intrigued by the Disney excursion simply because of the "taken care of" aspect of it. After our very stressful situation last time, just knowing that the ship won't leave without us is comforting. Yes, it's less time to spend in STJ, but it would be enough time to enjoy a beach or take a taxi tour of the island or enjoy shopping/dining in Cruz Bay.
Since we've enjoyed STJ so many times before (and hope & plan to vacation there more in the future), we don't feel that we need maximum hours on the island, but if you want to maximize your STJ time, doing it on your own would definitely be the way to go.