Usually, new head coaches like drafting "their guy." With the league the way it is right now, I can understand why Harbaugh doesn't want to alienate Smith, but ultimately keeping him can create a "who's going to start" drama to which we've all become accustomed.
Chances are Harbaugh is going to draft a QB this year, whether it comes in the first round or the last. And the moment Smith begins to struggle, here comes the "start the new guy" chants, especially if the 49ers still maintain their "playoff hopes" long into the season.
Can you see it: the 49ers start off 1-5 or 2-4 with Smith starting, and during the press conferences come the, "When are you going to start Ponder, Dalton, etc...?" questions.
Harbaugh may recognize talent in Smith, but he's probably also smart enough to realize the short leash he would automatically be on and the lack of confidence he has and the rest of the 49ers have in him.
What's more is that the 49ers would likely have another "QB battle" in the offseason. And who wants more of that?