Es que en VB.Net el dispose tal vez sea un poquito diferente
Checa éste link:
http://weblogs.asp.net/psteele/articles/9603.aspx
Aunque el Dipose lo puedes hacer liberando tus objetos directamente
Ejemplo:
Cita: Public Sub Dispose() Implements IDisposable.Dispose
Me.Dispose(True)
System.GC.SuppressFinalize(Me)
End Sub
Private Sub Dispose(disposing As Boolean)
If disposing Then
MyObj = Nothing
End If
End Sub
Como vez, tu puedes hacer tu dispose como mejor lo creas y dependiendo de lo que hagas
Salu2