After a district court judge ruled the military's Don't Ask Don't Tell policy unconstitutional last month, the Obama administration went to court to defend it. Why? Officially, they say it's because they feel obligated to defend all properly enacted federal laws as long as they're even arguably constitutional. If that tradition were to die away, and presidents simply declined to enforce laws they disagreed with, chaos would ensue.
But is that the real reason? Partly, yes. But I suspect it actually has more to do with past promises Obama has made to various DADT stakeholders, especially those in the military. Basically, the deal he made with Secretary Gates and the Joint Chiefs is this: I'll let you control the process, write the rules, and move things along at a deliberate pace. In return, you'll promise not to publicly oppose repeal. The tradeoff is simple: DADT repeal will take a little longer, but it will end up having the support of the military leadership and will therefore be less contentious and more permanent. This is a win for both Obama and the military.
For better or worse, deals like this are just the way politics works. If Obama chose to drop the court case and let DADT be abruptly repealed before the military had its ducks in a row, the Pentagon leadership would probably take it as a personal betrayal by a commander-in-chief who had given his word on how this would all play out. That's not something a president can afford.
This, by the way, is probably also the reason that the public option wasn't added to the healthcare reform bill during the reconciliation process. Aside from the fact that Nancy Pelosi might not have had the votes in the House for it, Harry Reid had (again, for better or worse) agreed to drop the public option months earlier in return for support of the main bill by centrist senators like Ben Nelson and Joe Lieberman. Having done that, and having gotten their votes based on that agreement, he couldn't turn around a few months later and put it back into the bill just because he didn't need their votes any longer. No party leader can pull a stunt like that and expect to retain the confidence of his caucus.
So Obama is stuck. He gave his word to the military leadership, and he has to stick to it whether it's politically beneficial or not. What's more, I suspect that he really does think that everyone will be better off if repeal happens via the political process and with the full support of the military brass. His decision to appeal the district court decision was, as they say, heavily overdetermined. He had what he considered three good reasons, and any one of them would have been enough.