La solución es lo que tu propones, fíjate que el código que muestras no este dentro de un with, ten en cuenta que en el create del componente aún no esta asignado el parent del mismo.
Código:
constructor TMiComponente.Create(AOwner: TComponent); override;
begin
inherited;
FBoton := TButton.Create(Self);
end;
procedure TMiComponente.SetParent(AParent: TWinControl); override;
begin
inherited;
FBoton.Parent := AParent;
end;
en el caso que sea en un procedure como vos decís:
Código:
procedure TMiComponente.CrearBoton;
begin
FBoton := TButton.Create(Self);
FBoton.Parent := Parent;
end;
Saludos!