Hi Wayne,
In my personal opinion, you could probably get away with doing this yourself and save some cash. Install the following plugins:
The Events Calendar
Geo Mashup
Geo Mashup Search
The Geo Mashup Search plugin will let a user enter their current address (or an address anywhere) and then returns a list of events with “distance away” information. The Geo Mashup plugin will display everything nicely on a Google map.
No real need to write code as the plugins take care of that.