1) No the target machine is "infected " with a .dll file or sometimes a .exe in order to excecute the vnc payload however if you want to use a vnc exploit then your target machine must be running the vulnerable service.
2)Yes. You executed the payload correctly if you gained a C:/ command line on the attack box. Not all exploit shellcode executes in this way some payloads have a direct connection. Normally only one or two payloads will work on a given machine.
On a lighter note sounds like your doing a little learning for your self which is what i like to hear.