Drupal will do all that you want. It is free but it has a learning curve for the developer so if you are the developer, get ready to learn. If you are looking for a developer, that talent (experience/knowledge/skills) will come at a cost.
Photo Album - Depending on how complex you want to get this can be handled with or without add on modules. I would look at [Media Gallery + [URL="http://drupal.org/project/colorbox"]Colorbox](http://drupal.org/project/media_gallery)
Forum - Check out [Advanced Forum... It's a module that supercharges Drupal's built in forum. There is also a Drupal Group for Advanced Forum and [URL="http://drupal.org/node/227108"]Documentation](http://drupal.org/project/advanced_forum).
Mail Manager - There are a number of Mail Managers available but I haven't used them so I can't comment.
Membership payments via Eventbrite - The Eventbrite module hasn't been ported to Drupal 7 yet so you'll need to tackle that or get a developer to tackle that.
Yes Heritage Toronto is Drupal, probably Drupal 6.
I don't see anything that is impossible to do with Drupal but as I mentioned if you are going to do the development but don't know the system, get ready for a learning curve. IMO, the benefits highly outweigh the trouble of learning it though. We've been a Drupal shop for almost 5 years now and I know we couldn't perform the work we do without it. After our first successful Drupal project we chucked our our in-house CMS.