However in this case the trains have still run, and there's an obvious cost to this.
I certainly wouldn't expect to get a refund on a non refundable air fare should an event be cancelled. I've not seen any airline offering refunds on their Newquay flights.
Airlines aren't (in most cases) really offering a public transport service and aren't wholly reliant on the generosity of taxpayers for their continued existence. 30 years ago the trains would have run and BR would have received nothing for their efforts. Bad luck, that's a risk you take with events susceptible to poor weather. The modern railway has used it's soaring fares to transfer the risk entirely to the customer. Either you need to take out a loan to buy a ticket or you have to pay for a service you can't use. Either way, the shareholders win.