imshow can't show 2 channel images, only 1,3,4 channel ones.
if you use DFT_COMPLEX_OUTPUT for the dft, you get a 2 channel image, applying the reverse idft again produces a 2channel(complex) Mat
no idea, why you get a 'System.Runtime.InteropServices.SEHException' though ( is that 'managed c++' ? )
convertTo() changes the type of the channels, but not their count (yea, surprise).
so, either restrict it to the real part:
idft(multipliedDFT, inverseDFT, CV_DFT_SCALE | CV_DFT_REAL_OUTPUT );
or split it , and throw only the real part at imshow:
Mat chan[2];
split( inverseDFTconverted, chan );
imshow("lalala", chan[0]);