a) I believe both syntax's will work. The parenthasis are essentially unneeded placeholders. Certainly use the one from the bindings and not the one I wrote since it would be the better tested syntax.
b) The map is picking up the hard coded country setting in the default from address. The starting location is the default location returned with the address: "United Kingdom"... which you have hard coded as the start field.
c) You can probably leave the country field blank, or use something like:
<?php echo((isset($_POST["Pcode"]))?"United Kingdom":"") ?>
That way the country won't be filled in if the pCode isn't included.