А что строка
разве не вызовет диструктор класса?
Чего вдруг? Это тебе не lisp, в котором в этой ситуации чистится память.
И вообще сборщик мусора действительно когда-нибудь вызовет Ent.Dispose(), только тут два нюанса:
1) Ent вставлен в чертеж или нет? Если вставлен, то он должен быть вовремя закрыт, т.е. вызван его метод Close(), который равносилен вызову Dispose() в этом случае. Если не вставлен, то Dispose() просто освобождает память.
2) Сборщик мусора может запустится не в главной задаче, а это чревато Fatal Error если Ent не был вовремя закрыт (т.е. не был вызван его Dispose).