I think Roberts voted as he did on purpose, because he knew that it would energizes the republicans and ensure an obama lose in November, and then the entire bill would be repealed anyway.
I think roberts voted with what is constitutional, and not with what his political opinion is. I applaud him for that. It is exactly what a supreme court judge should do.