A similar problem exists in the services world, especially hotel reservations. For years, the hotels sold to ITAs (Internet travel agencies) who were free to set their own prices. Then they started selling through their own sites (usually with higher prices). Then they got smart and realized that most people are going to the ITAs to get the rooms cheaper. Instead of giving the rooms to the ITAs for a cheaper NET price, they would much rather sell the rooms directly for the retail price.
Similar to MAP pricing in the product world, many of the larger chains have instituted lowest price guarantees and won't let any of the ITAs sell below that price. or (more common), won't allow ITAs to advertise a price below that hotel's direct price.
What's a poor ITA to do? If it's just a matter of not advertising the price, you do what Priceline does- you don't reveal the price (well, actually the hotel) until after they've made a reservation.
Another option is to bundle the rooms into a package. For example, if the hotel gives you a NET price of $100 for a room, but they won't let you sell it for less than $150, but you have a theme park partner who gives you a NET price of $20 for 2 tickets (retail price: $40). You advertise a package of room and 2 tickets to the theme park for $160. For the consumer, they can get a room only direct from the hotel for $150, or for $10 more, they also get $40 worth of tickets to the local theme park: a "win" for the consumer. Hotel doesn't see an advertised rate lower than $150: a "win" for the hotel (according to their definition). The ITA makes a profit on both the hotel room and theme park tickets: a definite "win" for the ITA.
In the product world, try to bundle the product with other products or services to get around the MAP pricing.