If you arrive STT at 3:15 pm, then you should very likely be able to make the 5 PM ferry from Red Hook (it takes us 35 minutes from STT to Red Hook with no cruise ships in town, to up to an hour if the harbor is full of them). Either way, you'll be on St John before the 5:30 CA ferry has even left. Taxi fare to Red Hook is not that much more than to CA.