I think now that Google offers local search results, it is more important to make sure that your business listing with them is fully optimized.
If you haven't already set up your listing go to
https://www.google.com/local/add/login? ... n_US&gl=US
and set it up there.
Make sure you fill out every single box and try to include your keywords however you can.
Also use up all the pictures and videos. I've noticed that the ones that are completely filled out get better placement at the top.
Another thing is that you can edit your company name to reflect what services you offer. For example mine is "Ultra Clean Carpet Systems- Carpet Cleaning, Carpet Cleaners, Tile and Grout" so everytime they search for any of those terms in my city, I come up at the top.
Once you finally get it set up, get your clients to write reviews for you. Most of the time, the one with the most reviews gets placed at the top.