We had a similar situation when we found our that we could not travel to/from Mexico unless my 5-year old's passport had 6-months remaining on it after our time of travel. American Express recommended an expediter called Visa Central (
www.visacentral.com). They were not cheap but got us his passport in 48 hours. They delivered as promised so I recommend them. You may get sticker shock as it cost us about $400 for the exercise but it was well worth it rather than having to leave my boy in Mexico! <img src="http://www.traveltalkonline.com/forums/images/graemlins/jester.gif" alt="" />
Spend the money. Do it right and have a worry free vacation!