There are a number of pitfalls that have to be avoided with the principle. One of them (which even professional philosophers do not always avoid) is the fact that the meanings of terms have changed somewhat over time. When Aquinas talked about 'intention' in the famous passage on self-defense, from which we get the principle of double effect, he meant something broader than what we mean by 'intent'. We have no precise word for what Aquinas had in mind, but 'intention' in his sense is essentially one's whole disposition to an act. The word was associated with archery: the archer disposes (intends) the arrow to wherever it hits. In our case, intent is obviously a lot of that; but there cases where intent is not the only thing relevant to intention in Aquinas's sense -- cases of negligence, for instance, where the quality of your disposition to act depends as much on what your intent wasn't as on what it was.
The principle is also usually said to deal with foreseen but unintended effects, but this is too strong and too narrow. It is too strong because if you go into the act foreseeing that it will definitely follow from what you are doing, it is part of your intention. The principle of double effect can only apply where there is a possibility of the bad effect not occurring, or at least seems to be a possibility of the bad effect not occurring. (That's why Jennifer is quite right to raise the problem of whether there is actually a double effect or just one.) And it is too narrow because many of the most interesting and useful applications of the principle occur where the effect was
As Jennifer notes in her post, the fact that we can sometimes split the effect into intended and unintended effects (i.e., effects we set ourselves to do and effects we didn't set ourselves to do) is essential for much of our life; it's the only way we can function in a world where all sorts of actions are risky, and it follows pretty directly from the fact that we use means for ends.
As Jennifer also notes, the principle of double effect doesn't have much room to work in most cases of lying or deception: we are usually doing exactly what we've set ourselves to do. There are cases of deception where it would still apply: for instance, if I say something to someone knowing that (given their background) there's a real chance they could seriously misunderstand, but my reasons for saying it anyway are still good. In such a case I'm not aiming at deceiving them at all; it's just that it's a risk. But in general, no. And in the case of lying, it can only work at all if we already know that lying is sometimes an acceptable means to an end. There are actually cases, as Jennifer suggests, where a kind of deception can be an acceptable means to an end -- these kinds of deception are governed by considerations of what people have a right to know. A lot of basic security features will make use of deception in this sense, by setting up decoys, dummies, and the like that will trip up people who don't have a way to distinguish them from the real thing. But double effect couldn't tell us whether lying is right as a means to a goal, because that's not the principle of double effect does. It presupposes what is right or wrong; what it does is tell us that we can sometimes distinguish effects that we don't will from effects that we do, and that only the former are relevant to deciding whether our action was one kind of action or another. When we know that, we can give specific reasons why killing someone in self-defense is not murder or serious negligence. But it's only because saving your life is a good action on its own that it does so.