Why does Fourier zero-fill interpolation pad the middle frequencies?
Usually a fast Fourier transform (FFT) returns a vector that starts with the zero-frequency bin. This means that the Nyquist frequency (sampling frequency / 2) bin is in the middle of the vector. So you are not pushing apart the low and high frequencies by zero padding at the middle. The zeros go between the highest positive frequency bin and the highest-absolute-frequency negative frequency bin.

Rick omits the details of how to deal with the Nyquist frequency bin (which is there with even-length DFT): If you have a non-zero Nyquist frequency bin then you need to split it into a half-amplitude positive Nyquist frequency bin and a half-amplitude negative Nyquist frequency bin, and insert the zero padding between those. ...I think.