нулевой коалесцирующий оператор является правильным ассоциативным, что означает выражение вида
Сначалавторой третий
оценивается как
Сначала(второй третий)
Исходя из приведенного выше правила, я думаю, что следующий перевод неверен.
From:
Address contact = user.ContactAddress;
if (contact == null)
{
    contact = order.ShippingAddress;
    if (contact == null)
    {
        contact = user.BillingAddress;
    }
}
To:
Address contact = user.ContactAddress ??
                  order.ShippingAddress ??
                  user.BillingAddress;
Вместо этого, я думаю, что следующее правильно (пожалуйста, поправьте меня, если я ошибаюсь)
Address contact = (user.ContactAddress ?? order.ShippingAddress) ??
                   user.BillingAddress;