Who is responsible when we get stuck with a worthless voucher? The company -- or the customer? I'm not fond of the term "the customer is always right," but in this particular case, it's a fitting phrase.
Airlines don't like to return your money, even when they're required to by law. The fix? We need to incentivize airlines to repay us quickly by tightening refund rules and adding harsh penalties for pocketing our money.