No. Because US LAW says that anyone who joins the military forces of another nation loses their citizenship. US law governs US citizenship.
401(c) of the Nationality Act 1940, which reads:
A person who is a national of the United States, whether by birth or naturalization, shall lose his nationality by:
(c) Entering, or serving in, the armed forces of a foreign state unless expressly authorized by the laws of the United States, if he has or acquires the nationality of such foreign state...
Again, you have a law of congress controlling the meaning of a constitutional term. You are just trying to finesse the point.
*I* cannot be compelled to fight for Canada. Cruz CAN be compelled to fight for Canada. Can YOU be compelled to fight for Canada? Now do you understand the distinction?
The excerpt of law you provides says that a person who joins the armed forces of a foreign state has to also acquire foreign nationality, in order to lose US citizenship. And even this can be overridden by statute.