The airline's entitled to say it's £10 for a widget, wherever you're flying to. It must pay £1.67 to HMRC if you're on an intra-EU flight, but it keeps all of your £10 if you're flying to somewhere outside the EU. There's no rule that says they can't do that.
That's the way that the shops work at the airport, too.
It would be wrong if they told you that the price is "£8.33+VAT" for the widget, but then take £10 off you on a non-EU flight and not pay the difference to HMRC. But I'd be astonished if that's what they tell you.
Exactly what happens - in many airports a nominal 'average' margin is fixed with suppliers whereas the actuals by destination are declared to HMRC. If retailer sells more to non-EU they pocket the difference as additional margin.
On many items now where commodity ingredients are involved and there is a price-war on the domestic market then you're not going to buy cheaper at the airport/on-board - airports want their xx% margin and the retailers need their yy% to cover the guarantees they've made to airport authority for a 5-10yr concession