Regent bears the responsibility for this problem; Viking, too. They've known about NZ and Aussie rules on Biofoul for some time, and could have anticipated the problem. Since passengers have no control over how or when to deal with the issue, they should not be made to "share" the expense. In my experience there are few passengers who travel from home just for the "hotel" experience. Cruise passengers expect that an occasional port will be missed due to inclement weather or other issues beyond the ship's control, and when that's happened on cruises we've been on, there was some disappointment, as one might expect, but passengers understood the problem and we all went on with our day at sea.
Biofoul and the Aussie and NZ rules are not beyond the ship's control. Missing multiple (or more!) ports because the ship didn't meet the ports' standards is unacceptable and Regent (Viking, too) should step up, refund the passengers' fares as they would almost certainly do if they had failed to reserve a berth, failed to pay taxes or other fees or otherwise failed to make the necessary arrangements (or to comply with local laws) to stop at a planned port. Cruise lines need to figure out how to comply with the rules or drop Australia & New Zealand from their itineraries. Passengers should not suffer because cruise lines fail to adequately prepare.