Gay marriage isn't something either side has to compromise on. It is basically a done deal. Over the next decade states will allow gay marriage one by one. Our culture has changed and there isn't anything anyone can do about it.
On comprehensive immigration, the Dream Act (where you let kids who grew up here gain citizenship) is a perfect compromise. Many people on the left side of the issue didn't like the Dream Act since it would make it harder to gain a path to citizenship for adults. Now as demographics change, you will see much less of a need for compromise.
The Healthcare bill that passed is the compromise. Liberals wanted a single payer system. Liberals even gave up the public option, and accepted what many liberals feel are crummy rules on contraception.
The fact is that the Democratic party is being much more flexible and pragmatic than the Republicans, and there are far fewer "extreme" uncompromising liberals than there are extremist conservatives. This is shown in issue after issue
- Healthcare (as we have already discussed)
- The budget: Liberals are willing to trade spending cuts for raising taxes, conservative make politicians sign an extreme "no taxes ever" pledge to get elected.