My name is Caleb and I am a member of Constant Contact's API Developer Support Team.
The difference between the sources is dependent on who is taking the action to add or update the contacts. For example, if a contact were to use a sign up form you would want the source to be 'Contact'. Whereas if the account owner were to be the one utilizing the integration to pull in an existing mailing list you would want the source to be 'Account'.
Please note that only the create_source = 'Contact' is able to trigger the welcome email. Only use this method when a contact gives you their explicit permission to send them emails. It is a violation of US and Canadian anti-spam laws, as well as a serious violation of the Constant Contact Terms of Service to use the Opt-in features of the API to opt a contact back in without his or her own action and consent.
Contacts Overview V3 API: