Despite what Duolingo might lead you to believe, do does not translate as "for" in every case. Especially with time. If the action is completed, or a designated time, use ar gead, followed by the genitive (ar feadh míosa). If it's ongoing, use le (Tá mé anseo le trí mhí anois - "I've been here for three months.")
When I get back to my binder I'll updated with more detail.