Me parece que estas cometiendo un error al hacer:
Código:
pnlFondo.Top := Self.Top;
pnlFondo.Left := Self.Left;
pnlFondo.Height := Self.Height;
pnlFondo.Width := Self.Width;
Posiblemente lo que quieras hacer es:
Código:
pnlFondo.Top := 0;
pnlFondo.Left := 0;
pnlFondo.Height := Self.Height;
pnlFondo.Width := Self.Width;
Recuerda que este componente esta contenido por el Self.
Otra opción puede ser trabajar con BoundsRect y ClientRect o con la propiedad Align := alClient!
Saludos!