BaseCurve is a property, you are using it like a method. This should work (although I don't speak VB too well):
Dim baseCurve As Curve = survFig.Basecurve
I'm pretty sure you can do something like this, too (it works in C#, not sure of the context in VB):
Dim survFig As Curve = TryCast(TR.GetObject(Res1.ObjectId, OpenMode.ForWrite), Curve)
Oh, as I was changing that last line I realized you are casting the Figure as an Aecc object, which is COM, so will not work any way as BaseCurve is a property of the managed API SurveyFigure object.