Te hago dos obeservaciones
1. Te falta el override del destructor, tiene que ser asi:
Código Delphi
[-]destructor Destroy; override;
2. Llama al inherited del destructor al final
Código Delphi
[-]destructor cMiClase.Destroy;
begin
FreeAndNil(Obj);
inherited Destroy;
end;