The photodiode method
Artifice linked to would be the most reliable (only counts fired rounds, not just trigger pulls). I only skimmed briefly but I assume the code to run it is similar to what I'm about to suggest.
This would be the "official" way to do it if you're an Electronic Engineer. Assuming you don't have a degree in engineering or a hard science, Arduino is definitely the way to go.
You can program a simple one-button event handler which triggers a loop, which has no condition to allow it to go below zero. Then a second button (actuated by magazine insertion) triggers an interrupt pin which resets the loop and returns to the original button handler. The Arduino could then send the appropriate signal to a segmented LED display with a built-in serial-based controller chip, or, probably slightly easier, you can just program the arduino to send the appropriate parallel pin signals yourself, directly to the LED array controller, or even just drive a two-digit LED display directly by putting the appropriate binary values into the array (one being LED on, 0 being LED off). Depends what LED display unit you use, really.
There's a good chance you might run into matrices though, so you probably have two choices: 1), do it the hard electronics way, 2) do it the hard C++ way.
Oh, or three: Just buy one here:
http://www.westaby.net/store/index...._id=24&zenid=fcf206388eaf90f8f6f34758f15c8103 - which is probably made with the logic circuit method rather than a microcontroller. It now says contact for price, but as I recall it's about $35. It's kind of expensive, but no more so than buying an Arduino Uno and LED display, and it might be the best option if you have limited electronics experience. All you'd need to do is replace the trigger switch with a photodiode if you want to count shots rather than trigger pulls.