If you want wireless, there's only one left-handed mouse that I know of - the Logitech MX610.
Plusses:
- true left-handed, contoured shape, feels very natural in hand.
- 7 extra buttons, 5 on top, two on right side.
- Two LEDs, intended for "mail waiting" and "IM waiting"
Minuses:
- Typical Logitech quality. I have to replace mine apx. every 6 months due to button failure.
- 2.4 gHz and not very interference-proof. I haven't had any trouble with WiFi or Bluetooth interfering, but it wigs-out when I run the microwave oven.
I dunno about "programmability". I don't think you can really program the mouse itself, but there is third-party software for Windows that lets you assign the buttons to anything you'd like, but I imagine that's in the software. I assume there is similar software for the Mac.
I just have mine on my Linux system, and control my Macbook using Synergy keyboard and mouse-sharing software, and haven't tried to do anything fancy with it. When I used to have a dedicated Windows system, I did use uberOptions, which patches SetPoint and allows the sort of thing I think you are looking for.