Cambiar el formato de fecha con independencia del Panel de Control

procedure TForm1.Button1Click(Sender: TObject);
 var
   FormatoFecha: PChar;
   ErrorCode: DWORD;
   ErrorMessage: Pointer;
 begin
   FormatoFecha:='dd/MM/yyyy';
   if not SetLocaleInfo(LOCALE_SYSTEM_DEFAULT, LOCALE_SSHORTDATE,FormatoFecha) then
     begin
       file://si no se produce la modificación mostrar mensaje error
       ErrorCode:=GetLastError;
       FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER or
         FORMAT_MESSAGE_FROM_SYSTEM, nil, ErrorCode, 0, @ErrorMessage, 0,nil);
       MessageDlg('Error al cambiar el formato de fecha a ' +
         string(FormatoFecha) + #13 +String(PChar(ErrorMessage)),mtError, [mbOk], 0);
       LocalFree(hlocal(ErrorMessage));
     end;
 end;