IMHO, Iraq is the reason we haven't been hit since 9/11. The U.S.-led invasion of Iraq has forced groups like al-Qaeda to divert enormous time and resources to sabatoge our mission there. By going on the offensive -- taking the fight to the enemy on the enemy's own home turf -- Bush has put al-Qaeda on defense. So, in a sense, Iraq has been a diversion -- for the terrorists who would rather fight us here than there.
It can't be said often enough. Our troops are over there to protect the rest of us here.
You're right. Bush has the terrorists too busy defending themselves to execute a successful terror attack.