i) Let $A\in M_n(\mathbb{C})$. Up to a change of basis, we may assume that $M=diag(U_r,N_{n-r})$ where $U$ is invertible and $N$ is nilpotent.
If $X^p=M$, then $MX=XM$ and $X$ has the form $X=diag(Y_r,Z_{n-r})$ where $Y^p=U,Z^p=N$.
We can choose $Y=\exp(\dfrac{1}{p}\log(U))$ where $\exp(\log(U))=U$. Then the question is: what are the nilpotent matrices that are $p^{th}$ powers ?
ii) The general answer is given by
Psarrakos. On the $m^{th}$ roots of a complex matrix, Electron. J. Linear Algebra 9 (2002) 32–41. cf.
https://repository.uwyo.edu/ela/
$\textbf{Theorem.}$ $A$ has a $p^{th}$ root if and only if the “ascent sequence” of integers $d_1,d_2,\cdots$ defined by $d_i=dim(\ker(A^i))−dim(\ker(A^{i−1}))$ has the property that, for every integer $\nu\geq 0$, no more than one element of the sequence lies strictly between $p\nu$ and $p(\nu+1)$.
iii) The following result is interesting
$\textbf{Theorem}.$ if $A$ is a nilpotent complex matrix, then the set of all $p^{th}$ roots of $A$ is path-connected. cf. De Seguins Pazzis
https://arxiv.org/pdf/1812.02203.pdf