The visitors took an early lead after an error from Wayne Sandilands, where he failed to clear a routine pass that rolled into his own net on 15 minutes.
The Buccaneers tried to get a quick reply, but Xola Mlambo shot over the bar from close perimeters on 22 minutes of play.
A minute later, Tapuwa Kapini was rushed off his line to prevent Augustine Mulenga from pouncing on a through ball into the box.
Pirates struck the woodwork when debutant Vincent Pule’s free-kick gave a scare to the newly-promoted side on 38 minutes, leaving Kapini flat-footed.
On the stroke of halftime, Pule asked questions of Highlands defence again when he burst through the middle and looked to score but his effort went narrowly wide of target.
Pirates made an early change, bringing on Justin Shonga for a rather ineffective Thembinkosi Lorch minutes into the second half.
The hosts were handed a lifeline to equalise in the awarding of a penalty following a foul on Mulenga inside the box.
Compatriot Shonga stepped up and sent Kapini the wrong way from 12 yards to bring the contest to a level standing.
The equaliser pushed Bucs to press for the winner and Mulenga forced Kapini to a low save on 70 minutes.
The Buccaneers were all over the show, providing little mercy to the new boys as Mulenga went close again but Kapini came up with another heart-pounding stop eight minutes to the end.