Railways (NL, DE) pull the same sort of crap. In NL there is a centralized billing system, they know exactly what path you took and when, so also that you were in the delay. Credit it to your transport card automatically? Nah. You need to fill out paperwork and then get a few euros for missing half of your evening. Germany is even better: whenever there's delays, you see long queues at the service center because (according to my colleague with whom I was there) you need to get something stamped IRL as proof that you were really there during the delay. And the amount you get back is still peanuts.
Incentives like these to be on time don't work. I can't imagine more than a handful of people per trainload/planeload go through the hassle. At least for planes iirc it was a reasonable amount, at least for short delays where you don't have to book an entire holiday around. If you'd get it without a legal battle.
Strike action because they don't pay their employees? Unforeseeable. The plane is broken? Unforeseeable. The airport cancelled the flight like it has been doing for the last 6 months? Unforeseeable.
Then you have to appeal to the regulator or small claims and most people just give up.
Sometimes they don't even refund your ticket after a cancellation and if you dare to chargeback they will prevent you from flying ever again.
Consumer rights are great, but often is hard to enforce them.
It can take a while for the regulator to get to your case, but it is only a 10-15 minute investment to find the relevant authority and to email to them with your information/circumstances. Then 2-4 months later the airline follows up to arrange payment. With budget flights the compensation can end up paying for multiple future flights.
The money was more than the flight was worth but the whole ordeal was terrible, literally every hotel in Dublin was booked out on every website (this wasn't the only flight cancelled, every one of them was) and she had to stay in this horrible dirty hostel. So it was kinda nice to get that money.