President Barack Obama made another push to sell his health care overhaul to a skeptical public Tuesday, calling it a victory over special interests that will help the middle-class and defending the “courage” of legislators who backed it. “This day affirms our ability to overcome the challenges of our politics and meet the challenges of our time,” Obama told a college audience outside Washington, as he signed into law the final changes to the sweeping plan approved by lawmakers last week, along with reforms in college student loan programs. The signing capped a year-long struggle between Obama's Democrats and the Republicans, who have vowed to repeal the health care bill, that has set the stage for a bitter campaign for control of Congress in November. Democrats have a majority in Congress, but Republicans are hoping to make gains later this year and have vowed to make the healthcare bill the centerpiece of the election battle. Obama defended lawmakers who voted for the bill, the most sweeping shift in US social policy in decades, and took aim at what he said were misleading attacks. “Courage is an essential ingredient in any landmark legislation, particularly when the attacks are as fierce and unrelenting and inaccurate as they have been over the past year. I just want to commend members of Congress who had the courage to do what's right,” he said. Opinion polls show Obama and his Democrats will have to work hard to promote the 10-year, $940 billion overhaul. Nearly two-thirds of Americans say the plan costs too much and expands the government's role too far into a private industry, according to a USA Today/Gallup survey published Tuesday.