I believe the best solution is what I gave you already. I usually end up replacing lesser stuff with the best solution, since lesser stuff has lots of annoying issues:
Safety issues (cheap batteries that explode / vent with flame, simplistic chargers that kill / detonate batteries)
Not working reliably (DOA, flickering/shutoff/random mode changes when shaken or dropped, whine from regulator circuity)
Not living up to the specifications (not as bright as claimed, ugly tint, rapid dimming due to thermal issues, fit and finish, runtime)
Not upgradeable
If you don't mind a little lower quality, check out the MG PLI MCE, was available from shiningbeam.com, which is apparently out of stock now.
Here's a review thread:
http://www.candlepowerforums.com/vb/showthread.php?t=230841
Even cheaper: If you already have a surefire 6P, WF502, or similar host, you can get an MCE module and pop it in. It won't be as bright or as rugged as the one from Malkoff, thermal management and the tint probably won't be as nice. DealExtreme sells one for about $25, which MrGman measured to be about 380 lumens out the front, dropping to about 345 after a few minutes of warmup:
http://dealextreme.com/details.dx/sku.21037. You must use a 17670 or 18650 to power it, since a pair of CR123 cells will be quickly ruin it. Make sure you read the reviews on the dealextreme site for tips on getting the most out of it.
I have a couple of the DX $25 modules in SureFire 6P hosts, and they work pretty well. I'm using 17670 cells. You can use them as-is, but I wrapped a long strip of aluminum foil around the pill to improve thermal mass / bonding to the body of the light. This also ended the slight whine from the regulator board. The beam isn't ugly, but it isn't pretty either. Tint is definitely on the blue side. Battery life is poor. It has high/med/strobe modes, with no memory. I hate strobes. Probably would get more lumens from an 18650 battery (higher current) and certainly would see improved run-time. Neat toy, but wouldn't trust it for use with a firearm.
--Max_Power