I'd say it's best to do it three weeks before, and then start the taper. That will allow you to get in another regular (non-tapering) 13-14 miler the week before. Four weeks to taper is too long in my opinion, especially if you've only done one 20-miler. Of course, if life/work/family might get in the way of getting the 20-miler done 3 weeks before, then get it in however you have to.
Where's your marathon? Your first one? Good luck and keep us posted!