I haven't actualy tried, but the problem might be in .Pixels[0,0,0]. Maybe you should try wth the Hex number instead. Like $FF9F0000. Just guesing though. :? Try it and see if it works.

if p_bTransparent then
begin
m_oImageList.Images[Result].TransparentColor:= $FF9F0000
end;

It should work for any color.