This is going to be a little more complicated that just styling the :active pseudo-class. The :active state is one where the link is being clicked. It's not when the link is the active page. So there's a difference.
Normally WP menus trigger the active state by adding a new class to the menu item dynamically. But since you're using custom code rather than wp_list_pages or something like that, that class won't get added.
So what you need to do is open header.php and find the body tag and change it to this:
<body <?php body_class($class); ?>>
That will make each page have a unique class attached to it that is created by WP.
Then you'll be able to attach the body class for that specific page using the post ID to your CSS code, and then style the menu button with the different background image.
Does that make sense? It's a real brief expanation, but from the looks of your site you have decent coding skills and can probably implement it. Nice work on the customizations btw!