Da in der
Unit TypeDef noch keine Neudeklaration von TImage zu sehen ist, ist das im Record verwendete TImage natürlich das aus ExtCtrls.
Abhilfe: Lege eine neue
Unit (z.B. MyImage.pas) an und verlagere deine TImage-Ableitung dorthin. Dann musst du in überall wo du dein TImage benutzen willst nur MyImage nach ExtCtrls in die Uses-Klausel schreiben.
Eins noch: Da du das TImage nicht registrierst, werden alle TImage, die aus einer
DFM geladen werden, dem Typ ExtCtrls.TImage entsprechen und nicht deinem TImage!