Actually, United has not been charging for headsets. They just leave them in the seat pocket.
I agree with mserle -- after paying hundreds of dollars it seems like nickel and diming to collect a fee. I'm sure the FAs hate doing it. Seems like it'd be much easier to build fee into price of ticket.