Yes, usually it's a bulletproof way. You can't get wrong if you call a person by a name he gave you introducing himself.
Meeting someone every Russian subconsciously evaluates the setting (formal, informal, semi-formal), the people (friends? strangers? younger? older? etc.), mood (friendly, stilted, etc.) and gives some version of his name, that in his opinion suits the situation.
It's the same for English speakers, isn't it? A man can introduce himself as Mr. Jones talking his daughter's boyfriend, or Bob when he meets someone in a bar. The main difference is that Russians prefer "First name + Patronymic" to "Mr.Last name", and the list of diminutives is longer.