I don't really see it that way, especially on this issue. As was pointed out in an earlier post, and which I should have mentioned, by signing the bill he gave McConnell and open door to kill this in the Supreme Court once and for all. Once they rule, and the Constitution is clear, it goes away. If he had vetoed it, it would come back from the dead year after year.
Didn't your parents ever let you do something they knew was wrong because in order for you to learn your lesson you needed to stub your toe on the facts of life? That is what is going on here and I am quite sure that Bush is working hand in hand with McConnel behind the scenes.
You also speak of the publics short memory. Have you forgotten the position that Jeffords put bush in? If you go back and look at Reagan's presidency, you will find that he had to cut lots of deals with Democrats (who were a lot easier to work with then than Daschel and company are now), in oder to get his tax cuts and military expenditures. The only difference is that Bush lacks the speaking eloquence to sell these deals to fellow Republicans that the Gipper possesed.
And last, while I have heard lots of carping about how wrong he was to sign it, those doing the complaining have conveniently glossed over the realities of the political situation and the consequences spinning his wheels on a non-issue that was destined to die in the Supreme Court anyway.
There are plenty of things I wish he were doing different, or, rather could do different. Most of these things, though, sort themselves out upon sober reflection. Like you, I wish he'd balled the bill up and thrown it in the trash. But I understand and agree with the decision not to. He did the smart thing under the circumstance, not the most gratifying thing. There is a difference.