Estas haciendo todo bien, creaste la imagen en memoria, y cambiaste sus propiedades bien, pero como lo puse en el codigo que te pase, no le asignaste de quien va a ser hijo, por eso no te aparece en la forma
void persona::persona(TObject *Sender)
{
imag = new TImage( Parent ); //crear el objeto TImage
imag->parent = Parent; //asignar de quien sera hijo
}
Tu pusiste como Parent a Application, no lo he probado asi, pero puede funcionar,
lo que yo hago es asignarle la forma en la que quieres que aparesca
imag = new TImage( Form1 ); //crear el objeto TImage
imag->parent = Form1; //asignar de quien sera hijo
O si quieres que aparesca la imagen dentro de un GroupBox se lo indicas
imag = new TImage( GroupBox1 ); //crear el objeto TImage
imag->parent = GroupBox1; //asignar de quien sera hijo
Por que recuerda que los parametros Left y Top hacen referencia al Parent, por ejemplo, tu tienes Left 40 y Top 80, si eliges como Parent a Form1, la imangen se colocara a 40 y 80 pixeles de la ezquina superios izquierda de Form1 y si pones como Parent a GroupBox1 la imangen se colocara a 40 y 80 pixeles de la ezquina superios izquierda de GroupBox1