I flagged a question as not an answer because it (at first) looked like it was a "comment" on the correct answer from the original asker. After further review I could see it was actually an answer, and I wished to cancel my flag request. But there is no mechanism to do that.
Every feature request is evaluated using (more or less) the following criteria:
For this particular feature, the cost far outweighs the benefit.
What does a bad flag cost? Nothing to the flagger, not really. The benefit of good flagging is your flags are given a higher priority in the moderator queue. If a user abuses the flag system, and they get a large number of declined flags, their flags will simply not show up in the moderator queue anymore.
Allowing people to cancel their flags, on the other hand, would require writing a whole new subsystem to show you your flags, allow you to check off the one(s) you want dismissed, and write the changes to the database. All this for a very small (it's on the order of 1 percent) number of flags that a bad flagger wouldn't bother to correct anyway.