Cruz was actually born in Alberta, not British Columbia.
And for the record, people born in Puerto Rico are American citizens, something that Justice Sotomayor had to remind several Republican Senators during her confirmation hearings. While there was never any question about her citizenship, since she was born in New York City, at least one Senator did question her about the 'immigration status' of her parents at the time of her birth, at which point she had to educate the committee about the fact that people born in Puerto Rico are natural born citizens, period.