It took us some time before the contrasting spelling of Brazil—always rendered with a Z on the Canadian Broadcasting Company, whose coverage we’re lucky enough to watch but with an S when we see actual local names of Brazil spelled out.
A quite complete and persuasive discussion of this difference, with very nice illustrations, also comes from Canada, this time Uma Nota, which happens to be a music blog about Brazilian music. Here is the link.
It turns out that the original name comes from the Portuguese pau brasil, brazilwood, a reddish-hued tree (Caesalpinia echinata). But that word, brasil, could be and was also spelled brazil, all depending on the mood of the speller, not only in foreign lands but also by writers (or typesetters) in Portuguese—even on currency. The official change, Uma Nota informs me, came in 1945 when a Portuguese and Brazilian commission set the formal rules for the Portuguese spelling of words. We, meanwhile, clung to Brazil.
We are among a minority—with Hungarians (Brazilia) and Bosnians (Brazil). The Germans say Brasilien, the French Brésil, the Spanish Brasil, the Italians Brasile. So where does that Z get its original roots? Well, the original name of Brazil, based on the earliest Portuguese records, was Terra da Santa Cruz, thus Land of the Holy Cross. That Z from the cross keeps hanging in there at least in some languages.