I have a large sheet of photographer's diffusion material. It's a frosty material about .015" thick so it's reasonably stiff and nice to handle but flexible as well so it won't break when you cut it with an Exacto knife or scissors.
On my lights that have easily removeable bezels, I just cut a round piece the correct size and put it on top of the flashlight lens between the lenz and the bezel. That way, the diffuser acts as a protector for the lens.
On other lights that don't have easily removeable lenses, I cut an EXACT size piece of the diffuser and just press it into the bezel on top of the lens. This works best on all my Surefire 1" lights (E1L, etc.) because you don't have to have that big "knob" of a F04 slip-on up front.
When I say exact, I really mean exact. I cut the diffuser material a .001" or two larger than the inside diameter of the bezel so when I press it in, the friction between the bezel and the diffuser material is enough to keep it in place even if dropped (ask me how I know that).
To remove it, it's easy to catch an edge of the diffuser with the tip of an Exacto knife and lift it right off.
The diffusor material I have is virtually identical in diffusion to the Surefire F04 which I also have.
The stuff I use is sold as "See Temp", and it's often used for making templates (which is why I buy it), but I realized right away what a great diffuser it would make for my flashlights.
Go to the link here and read about it at the "Modeling" link, and see what it looks like at the "Pattern Making" link.
http://www.seetemp.com/