Updated contactName to check customLabel first, then displayLabel, then fall back to generating a name.