Frequency-domain zero padding - special treatment of X[N/2]
Let's look at the frequencies of the bins in your 8-point DFT:

$$
\begin{array}{c}
\omega_A = 0,\\
 \omega_B = \pi/4,\\
 \omega_C = \pi/2,\\
 \omega_D = 3\pi/4,\\
 \omega_E = \pi = -\pi\ ({\tt mod}\ 2\pi),\\
 \omega_F = 5\pi/4 = -3\pi/4\ ({\tt mod}\ 2\pi),\\
 \omega_G = 3\pi/2 = -\pi/2\ ({\tt mod}\ 2\pi), \\
 \omega_H = 7\pi/4 = -\pi/4\ ({\tt mod}\ 2\pi)
\end{array}
$$
So when you interpolate by a factor of 2, point $E$'s frequency becomes $-\pi$ or $+ \pi$.

At a first glance, I can't see what the problem is with your approach as it's not clear whether $E$ should be put into the bin associated with $\pi$ or $-\pi$.

On Julius O. Smith III's page, he states a condition:


  Furthermore, we require $x(N/2) = x(-N/2) = 0$  when $N$  is even, while odd  requires no 
  such restriction. 


And his example there is for an odd $N$, which avoids the problem.



Not sure it's required, but here's the full reference to Julius's work:

Smith, J.O. Mathematics of the Discrete Fourier Transform (DFT)
with Audio Applications, Second Edition,
http://ccrma.stanford.edu/~jos/mdft/, 2007, online book, 
accessed September 28, 2011.