Differences in 24-bit to 16-bit color conversion

I have a form which draws a 24-bit bitmap to its canvas in the Paint handler
(the background image). On this form I placed a TEdit component. To make the
TEdit look transparent I set its color attribute to the same color as the
background is on the position of the editbox (for as far as I know, TEdit
cannot be made really transparent). This works OK in 24-bit color mode, but
when I switch the display to 16-bit color the TEdit appears in a slightly
darker color than the background image.

Somehow it seems the conversion routines for converting 24-bit color values
to 16-bit are different for the Canvas.Draw method and the (system) drawing
method of an edit box.

Does someone know how to make the background image and the editbox look the
same in both 24-bit and 16-bit color mode? I would be really helped with
that information!

Joost Jager.