My take is that many here believe if you have a problem with a product produced by a company, a service provided by an individual etc - you should let THE company/ entity know, not necessarily the world that revolves around that product or service as it may do little to help, and may make matters worse. If you find something in food, tell the restaurant manager, wait staff or someone else at the RESTAURANT, not some message board where many, many, many versions and iterations about that experience may be propagated. Perhaps the goal is not to show a picture of the rubberband that was found in your $10 milkshake (etc) to the milkshake world (for whatever reason), it is to show it to the company responsible for putting there, however that came to be.
Further, if you tell others that you generally like this restaurant's food, service, etc.... the last thing you may want to do is to open a gate whereby others may dogpile this restaurant, etc and start dialogue that may bruise part of the company's reputation.
Many would go to the source, because the source is the only enitity that can correct and resolve the issue. People on an internet forum cannot (directly)
Lastly, if you choose not to go to that restaurant manager, shop owner or cigar manufacturer with your concerns - you are not giving them that opportunity to get better at what they do. I believe the OP did this, but I think others would have stopped there.
My $0.02