My wife and I got married and spent 2 weeks in the USVI a few years ago.
St Thomas is far too commercial for my tastes. That is the island with the airport and deep water harbor. Think 4-5 giant cruise ships daily with all the people they come with. The shops there are great, and the island is really pretty, but IMO doesn't hold a candle to St John. We stayed at the Holiday Inn on St Thomas, and I wasn't all that impressed with the quality, although we did have a nice view of the harbor.
We spent the better part of our trip on St John, which is only 20 minutes or so away by ferry. More than half of the island is national parkland, and thus is as pristine as one could expect. The beaches are spectacular, Watermelon Cay being my favorite snorkeling. There are miles of walking trails, and plenty of Dutch ruins to check out. The lodging on St John more expensive because there is less of it. We stayed at the Westin resort while we were on St John, and although pricey, it was excellent. My sister in law and her husband stayed in a type of eco-resort that had screened in cabins that were almost like big tents in the jungle. It was pretty neat, but I like the A/C 😛
St Croix is 30 or 40 miles out, and so we didn't have a chance to get there. I had a boss that lived there for years, and he told me that St Croix was the "trashiest" of the islands because of less tourism. He was the one that recommended staying on St John, and I don't regret the decision a bit. Less crowds, and better scenery.