I think you have it in the last part of your theory. United does this same thing for some of it's Premier members. You get the full value of the refund difference if you take it in the form of a United Travel Voucher. There is no law or condition in the tariff that requires them to do this. I thinks it's a customer service issue, plus they get to hang on to your money!