With the way it works it's very difficult to implement like that.

Visual Basic is COM-based, and as such requires a registered COM server for most of its intrinsic functionality (text boxes, command buttons, etc.). Including this within the EXE would require a considerable rewrite of their distribution strategy.

Anyway, with VB.NET this disappears because by definition you have the runtimes there