i think we're going to continue to see mccain getting caught up in gaffes like this. he's in a rhetorical trap. mccain wants u.s. forces to remain in iraq and has made his iraq stance a centerpiece of his campaign to win over the public. the problem is that the public is solidly against mccain's stance on iraq. because iraq is such a major part of his campaign, he's going to talk about it a lot. and because his views are out of step with where the country is right now, it will be very easy for him to stumble upon political minefields like this when he talks.
put another way, if the american public strongly supported a continued presence in iraq, his "100 year" comment would not have been a big deal. and if the american public were not so concerned with bringing u.s. troops home, then it wouldn't matter if mccain said bringing them home is "not too important." mccain's basic problem is not that he's gaffe-prone, but rather that his views on iraq are incongruent with the american public's and so a lot of what he says about the subject will come across as a gaffe.
it's not that he has mispoken about iraq, nor is he accidentally garbling what he's really trying to get across, it's that he's getting across what he wants to say all too well. the american public in its current mood just doesn't want to hear a presidential candiate say stuff like that. it's only a "gaffe" because of the context.