He is staying in the US temporarily as a visitor under a visitor's visa. [study permit, etc... whatever, it is still TEMPORARLY.]
Country of Nationality, is Country of Nationality [it's pretty straight forward - it's the country where he was born, and holds his passport from.] Country of temp. residence [which is the US for him] is not his country of Nationality. Once his studies are done, under most circumstances he would return to his home country. If he had permanent residence in the US, you could use that as the country of habitual residence, but he's not permanent in the US - he's TEMPORARY. You have to use his actual home country.
Habitual residence is your home country. [in simpler terms, or where you reside as a permanent resident].
You explanation makes sense. But I just called the customer service via the B.C local number and then they transferred the call for me. The Canada Immigration customer service told me to put "USA" even if he is international here, as that's the country he is residing now. This way the case will be transferred to the Buffalo office (that's what they said !).
Thanks for your advice