From my perspective, you want 1) good grades, 2) good GRE scores, and 3) good letters of recommendation, not necessarily in that order. Summer research experience helps a lot too, particularly if you get your advisor to write a good letter of recommendation. The payoff really starts to happen when your research advisor, and hopefully one of your other writers (a prof or something) knows people at the grad school you are applying to. Then their words carry a LOT of weight. Of course, you probably still need good grades and GRE scores.
I think course work is important, but if you come from a good program and have awesome letters from people the admissions committee know, I'd be surprised if an extra CS course or two would be the difference of you getting in or not.
If you can't research at your school, try to get a summer job somewhere else. There are programs for that kind of thing. In my field, you can get summer positions through NUF, SULI, and ERULF. It's quite possible that the names have changed since the last time I worked with students from any of those programs was about 6-7 years ago.