My Dad has volunteered at multiple USGA-run events, as well as several run by the PGA. He much prefers the way the USGA runs their events.
One of the huge issues with volunteer work force is of course that people may not show up. The fee is at least partly to help weed out those who wouldn't take the job seriously. As someone earlier mentioned, one way to deal with that would be to refund the fee assuming all shifts were worked. On the other hand, from what I have been told, the food, clothes, and etc provided are well worth the expense.