Technically, Cruz is ineligible, but not because he was born in Canada.
His ineligibility is due to the fact that his father was not a US Citizen at the time of his birth (same as Marco Rubio). In fact, his father did not become a US citizen until 2005.
But, since being eligible no longer matters, he may as well run. He’d be a terrific candidate.
I should add, this is the reason that B. Hussein Obama is not eligible to be POTUS. NOT because he was born in Kenya, but because his father was not a US citizen.