If Zuckerberg doesn't appear, Canada should retaliate financially by putting a tariff on Facebook ad sales from Canadian advertisers. (And they could donate 100% of the tariff revenues to some non-profit that invests in local journalism.)
This is the same economic modeling behind the incidence of land-value taxes falling on landlords, not renters. When you're taxing a product of fixed size that is priced at whatever the market will bear, taxes get taken out of the owners' economic rents.
The government donating to specific non-profits is sketchy as hell, too. Both of your solutions sounds like considerably more serious problems than Zuckerberg refusing to appear.
[0]: https://thehill.com/blogs/congress-blog/judicial/305055-refo...
However, I don't know that Canada has any large social media companies, so they can just make it a normal tax and possibly get away with it.