The first problem with them is that they're amazingly obvious. Code review never stopped being a good idea, and telling me that it is isn't telling me anything I don't know. A lot of coding theory ends up like this, because you're essentially preaching to the choir.
The second problem is that they build up this amazing cultish following behind them, that Design Patterns are the only way to program, and you're obviously an incompetent coder if you don't follow the XP guidelines to the letter. Hey, doesn't this sound just like the Object Orientation mafia? It is. Well, fuck that, I was planning to do things that way anyway, koolaid or no koolaid.
Finally, you can't get away from the way they name things. You can't just have three classes interacting any more - one's a Model, one's a View and one's a Controller. Always with the Capitals.
And then it hit me. Design patterns and XP are just another form of voodoo practice - they're cultish belief systems which take perfectly ordinary concepts that we used all along, and then Name them in order to derive power from them. Voodoo programming, that's what it is. And you thought cargo cult programming was bad...