Yes, he is. But the term "American" does not define the United States of America. Canadians are Americans as are those born in Mexico, Honduras, Brazilians, etc. BUT in order to be a natural born US Citizen, it requires 2 citizen parents. Ted Cruz is not a natural born US Citizen. But I will vote for him for any office he chooses to run for and is qualified to serve in.
Just because YOU say that doesn’t mean it’s the case. Congress decides on the laws of who’s a citizen and who’s not, and they don’t agree with you.