It is not possible to specify a different port for the second remote host in a scp command line, e.g. scp -P 3434 host1:file -P 8765 host2:file is not possible, because the second -P is in an illegal position. This would not be bad if the port could be specified in another way, but scp does not use the Port setting in .ssh/config for the second host. It does use the setting for the first host, though.
Actually it *is* looked up in ~/.ssh/config, but on the remote host. By default, scp remote1:foo remote2:bar actually runs "ssh remote1 scp foo remote2:bar" (this is behaviour inherited from rcp). You need to either put the port number in the config file on the remote host, or use scp's "-3" option to do a 3-way copy which will use the local config file.
OK, thanks for clearing that up.
Set all RESOLVED bugs to CLOSED with release of OpenSSH 7.1