Во первых, зачем каждый раз создавать одну и туже форму? Легче, один раз создать и использовать ее до окончания программы.
Если хочешь что бы форма уничтожалась сама, то можно у той формы, в событии OnClose прописать следующее:
Код:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
Если метод Destroy не вызывает никаких последствий, то это хорошо, это говорит о том, что форма существовала, и была уничтожена.
А проверить сие деяние можно разными способами, к примеру обратиться к данной форме, если ее не существует, то получишь ошибку (к примеру, повторный вызов Destroy), или открыть диспетчер задач, включить колонки использования памяти, и смотреть на динамику ее изменения, до создания формы, после создания, и после уничтожения.