You haven't said the value of the cheque, which obviously matters a lot. Nor have you stated the bank you use.
Generally a bank will be able to cash foreign cheques, but it's probably more complicated because of the foreign currencies.
When I had a similar situation, I opened a US$ account and was able to deposit the cheque there.
Certain banks advertise that they can clear a foreign cheque, but as you don't mention your bank it's not clear here.
https://www.laurentianbank.ca/en/personal_banking_services/my_money/foreign_currency_deposit.html
There will likely be poor exchange rates, and fees, in any case. From the UK a transfer service like TransferWise would be much cheaper. So if you could have the cheque cancelled and a foreign transfer made that would be a good idea, but a lot depends on costs/exchange rates/etc.