Dogwatch
As ExxB said in an ealier post, the legislation gives no extraordinary reason why compensation is not due.
Therefore you son should write to TCX, who should have paid 600€ within 7 days and tell them to pay by return or it is the County Court (small claims.)
Then he can negotiate with Canadian Affair on their 'goodwill gesture' of free flights and seek a window that works for him.
The tour operator offering a 'ex gratia' accomodation does not release the carrier from paying the statutory compensation.
Good luck to your son and much respect to him for being in the 'thin red line.'