Name ones that would be better.

Nikki Haley probably would be the best pick regardless of who the presidential nominee is. Outside of Fiorina, Walker and Rubio and Kasich and Jindal are the next four.

Cruz couldn't pick Haley because she wouldn't accept. She would if he was the nominee already, but he has to play the VP card now.

Walker would have been a good choice but he probably also wouldn't accept right now, and he doesn't help with the rest of the primary as well as Fiorina does (even though she only does marginally). Walker is a good VP choice merely for the general election, but even then he's not great since even if he can bring Wisconsin, it won't change anything.

Kasich would be a great strategic choice for the primaries and a decent one for the general, but there's <0% chance he would accept now. He would only help most in the primaries since his strength with Ohio in the general isn't enough to get a win, but with his backing in the primaries it would be over and Cruz crowned.

Jindal would be about the same as Walker yet could help with diversity in a small way in the general.

Rubio would help noticeably in the primary and general, but he also won't accept. It is doubted by many that Rubio would accept the VP slot from anybody at any point.

Outside of maybe Rubio, a competent woman is far and away the best choice. The field consists of basically just Haley, Fiorina, and Susana Martinez, but Martinez shows no interest in presidential politics and there's word that she has some skeletons that keep her from being an option even though she is that adored woman + Mexican combo.

VP is not that great of a job. They do basically nothing except fulfill specific campaign functions.