The National Express Coaches to Southampton stop at Heathrow at all 3 locations- Central Bus Station (T2/3), T4 and T5.
I hope that you are flying in the day before the cruise to cover for any eventualities which might happen with aircraft delays, cancellations and retimings.
The direct coach is certainly the better route than taking one of the various possible tube or train routes into London then taking the train out of Waterloo (or elsewhere). The other train based possibility would be to take the Guildford bound Rail-Air Coach from Terminal 5 as far as Woking Railway Station then the Southampton fast train on every hour.
That is probably the fastest route overall, although whether the half hour wait at Woking removes the time advantage is a moot point.