Frequency domain Inversion of a signal
Two bugs in your code.


pol2cart() returns the real and imaginary part, but you only use the real part and discard the imaginary part
You apply ifftshift() on one method but not the other


Try instead

[a,b] = pol2cart(artPhase, artMag);
artInv = ifft(a+1i*b); % Time-domain signal
plot(artInv-invSig);