This looks like some kind of dead code.
No, CheckHasInstance checks something other than the base of the InstanceOf.