The traditional differentiation of bridesmaid and bridal dresses has varied in its nature throughout history, and hasn't always been about color:
- Bridesmaids historically have been available single women – one of their roles in the ceremony was to signal their own availability to the bachelors in the crowd.
- In more extravagant occasions in the past, as well as most modern weddings, the focus is simply on making sure the bride is seen as the most beautiful/resplendent woman at the wedding.
The main problem with Pippa's outfit, is that it both adheres to the first, and breaks the second 'rule' with such force, it's like a sonic boom of va-va-voom!
By popular acclaim (and Internet analytics), Pippa was far and away the most talked about woman at the wedding outside mainstream media, which one may take to mean that the bride herself was in many ways upstaged not just in the event itself, but in changing the conversation from the nuptials to a great big game of "who's next?".
Still, it's hard to ignore the possibility that this was at least somewhat an intended effect – perhaps the Middletons are not done with their social climbing after all, and we'll soon be reading about one of the many invited foreign royals taking an interest? Poor Prince Harry, one year Pippa's junior, is already being goaded into dumping his longtime girlfriend to have a go: http://www.thehollywoodgossip.co…
In any case, the answer is:
If the goal was to use Pippa's role as maid of honor to draw attention to her availability for future marriage, then yes, she should absolutely have worn the dress she did. On the other hand, if she really was there simply to support and keep the media focused her sister on a very special day, then wearing the more "modern traditional" ugly bridesmaid dress (perhaps in teal or mauve?) would've been much better suited to the job.
A quick look through the Royal Wedding official photos reveals that Pippa was not the only other member of the wedding party dressed in white, and even that there were several others trying to upstage her by wearing flowers in their hair and showing quite a bit more leg: