Justbaseball--You make some good points. There is something to sticking to your word. I do think that the difficulty comes when you commit to one place and later on a better school offers which was not on the radar originally.
Chinnychinchin, perhaps the better thing to do is to be honest with the D2. If your son likes it there and could play for the coach and really likes the school (very important), and the academics are what he is looking for (also very important-he does eventually have to get a job), then tell the coach that you'll come, barring a dream offer from a D1. We talked with dozens of coaches, and most were realistic on that issue. They will not expect you to pass up a D1 offer for lower ball. I assure you, most coaches will not hesitate at all to bump your son if a dream D1 player later falls through the cracks and wants to play for them.
Also, I would be careful about setting up a D1 as the dream scenario. Our school has sent off many players to D1 over the years (SEC, SoCoN,etc.,). As of yet, none have played. Sure, they all had bragging rights at the end of their senior year, but in the end was it worth it? My son's D3 team has an SEC transfer who realized he would never play at his school and came over so he could get a chance to start. He was miserable riding the bench. Still he may be beaten out by other players ahead of him this year.
Your son needs to ask the coaches if they really like him to start or they see him as a situational player. "He has a chance to start," is not the assurance you are looking for. . .he also has a chance of finding the cure for cancer as a freshman
Both are as likely when a coach says that. Also is the lower d1 a chronically losing team? My son had a similar decision to yours and decided from experience that being on a chronically losing team is not fun. Far better to play for a very good D3 or a good to very good d2.