I think the workplace is one of the few places where this would be acceptable, though I got tired of working someplace where we were always having shakedowns for somebody's birthday, new promotion, farewell, and so on.
And if a person doesn't want to attend due to either financial or dietary pressures to not eat out, or that they really aren't that close to the person to be honored, there's this pressure still that they "aren't a team player," or that the honoree would take their absence personally. And perhaps it is personal, and the absent person dislikes them. So many people could have perfectly civil working relationships with people they can't stand, if only they weren't constantly being forced to either help buy this person lunch or refuse to attend something neither they nor the honoree wanted them to attend anyway. (You can imagine what I feel about "team building" exercises where people have to share their deepest fears from childhood, learn personal trivia about each other, and catch each other as they jump off of tables, but that's another thread...)
I believe that a better response would be for everybody to sign a card, and if the person's supervisor wants to pay for a gift (or even better buy the whole group lunch!) with their own money, then they're welcome to do it. They'd just have to be prepared to pay for lots of gifts/lunches, so as to not be seen as playing favorites.
And part of me thinks that if this person really wanted her coworkers to celebrate her marriage with her, then she could have chosen a larger, less private ceremony, preferably on the same continent as her coworkers, and invited them. Or she could get out her wallet and invite everybody to lunch herself, or maybe bring coffee/bagels/donuts for everybody. "Since I'd love to have you with me when I get married, but we're getting married overseas, please join me for lunch/coffee/cake/whatever (my treat) at ________. Let me know by Friday so I can make reservations."