Pretty much this. The reason to have a rule like no double posts as opposed to don't be annoying is pretty straight forward: the former is this wishy washy, nebulous thing which exists but is pretty much impossible to objectively define in a hard and fast way. Someone might find a bit of a spam post annoying. Someone else may find it funny and perfectly fine. Same for double posts. So instead of saying don't be annoying, and force the staff to basically debate what is and isn't an annoying use of double posts, we've got the hard and fast, easy to define rule of don't double post. And everyone can see when a double post happens.
But since double posting is sort of useful in one situation (and it's really the only time I can think of where it's justifiable over editing) they tend to be lenient on that. But they can still just smack someone for double posting whenever needed and point to the rule and say don't do that. I'll admit exceptions to rules which aren't codified are a bit contentious for me, but I'll take that over a rule that doesn't actually mean anything when you read it.
Long story short: clear and concise rules (don't double post) are better than touchy feely hippie crap (don't be annoying) and easier to enforce consistently with little debate.