TADOConnection.Disconnect Does Not Fully Disconnect

Calling TADOConnection.Disconnect does not fully disconnect from an
Interbase 6.5 database. However, I've discovered that when the connection
object is freed the connection is completely disconnected.

I've implemented the same database operations using the BDE, Interbase
Express, and dbExpress access methods. In each case they fully disconnect
from the database without the need to free the database or connection
object. Each access method used the same database file and driver.

Apparently ADO or Delphi's connection implementation is maintaining some
type of partial connection. Perhaps if a message was sent to the underlying
COM object the connection would be fully severed. Does anyone have any
suggestions?

Key info:

Windows 2000

MSADO: 2.71

Delphi 7 Professional

Intersolv Interbase ODBC Driver 3.11.01

Interbase 6.5