Isn't this as simple as having an account? For Gmail, if you have a Gmail account and no other connection, Gmail pulls the picture of the Gmail user for the email contact card. So if the company creates a Yahoo mail account and uploads an Avatar, would Yahoo pull that image from their own servers if a Yahoo user gets an email from them?
Yahoo accounts are as all encompassing as Gmail though. Since the customer wouldn't be getting the email from the Yahoo account. I don't know if you can link an non-Yahoo address to a Yahoo account like you can to a Google account though.