Hi Steve,
If I understand your question, yes you should include the use of the city name - Calgary - in your on-page optimization efforts. You want to make it very clear to the search engines where your local business is located so you want your NAP: name, address, and phone number displayed in text prominently on multiple pages of your website. You also want to make sure that the NAP you use on your site is consistent with the NAP information submitted to online business listings and local business directories like the Chamber of Commerce and the Better Business Bureau.
For a local business, I'll always use a location keyword in the page titles and meta description tags. However, in using any keywords on-page in text, Alt tags, and headings, you want to be judicious in avoiding overuse. So in talking about shoe repair, I wouldn't attach "Calgary" to the keyword phrase "shoe repair" every time I used it.
Remember that Google and the other search engines associate a location with a search phrase by associating a location with the IP address used to originate the search. In many cities with substantial suburban populations, that means that people located in the suburbs and looking for shoe repair in the suburbs will be counted in the city search volumes because their IP addresses are associated with the city. So if your business is located in the suburbs, you might want to think of using location keywords for the major city and for your suburb location too.
I hope this helps!