Good question jrb. Google local is not related to where you are, but is related more toward where you want to be. The local results usually only get returned if there is a location as part of your search. For instance "
Washington DC Bed and Breakfast" usually implies correctly that you are looking for a place to stay in washington dc.
The situation you are describing is not related to Google local, but is more related to google results in general. The answer for your question is not always clear, but to use your example: If I am in the US and looking internet programming services, the liklihood that I really want to contract with someone in the UK is pretty small. In this particular case it is because I don't want to deal with the differences in contract law between two countries, different currencies, language variations on end user interfaces, time zone issues... So given that google returns about 233 million results for "internet programming services" I am fairly happy that businesses on a whole different continent are not among the first results returned. However if your friend was in some highly specialized field that only only 20 other companies offered, I am fairly certain they would compete more favorably for a top spot in Google US.