Yes, it is expected behaviour for the names not to change in this case. In Fire Red and Leaf Green, the game will treat the foreign name of a traded Pokémon as a nickname. Hence it will not change on evolution. From generation 4 onwards (and the introduction of the GTS) they fixed this, so that a foreign non-nicknamed Pokémon will change into the current game's language when it evolves. (For example, if I had a German Charmander called "Glumanda" in an English copy of Pokémon Diamond (its normal German name), when it evolves it would be called "Charmeleon"). In generation 8 this was changed again so that the Pokémon would keep the foreign evolved language (my Glumanda becomes a Glutexo). Fire Red is a generation 3 game, so my English copy of Fire Red would assume Glumanda is a nickname, and evolve it into a Charmeleon called Glumanda.
Note that the reason Pokémon originating from foreign games are always treated as nicknamed was to fix a bug in the first gen 3 release:
In the 1.0 release of the English versions of Pokémon Ruby and Sapphire, the nickname flag of Japanese Pokémon is not set when they evolve, so the Pokémon's species name will be adjusted accordingly (e.g. Pichu's Japanese species name is ピチュー and the player nicknames it ＰＩＣＨＵ, then trades it to an English version and evolves it, causing its name to become PIKACHU). However, since the English games still render the name in the Japanese font, an evolved Japanese Pokémon that has a name longer than five characters will cause a crash while attempting to load the Pokémon List or send it out to battle (in the aforementioned case, the game will try to render it as ＰＩＫＡＣＨＵ instead of PIKACHU). This was fixed in the 1.1 release by adding an additional check to the name function used during evolution so that the Japanese Pokémon's name is not altered, effectively treating it as if it were a nickname. The European releases and subsequent Generation III games also have this check.