Frequency response given poles and zeros
The MathWorks Documentation of the function zp2tf says that


  The zeros and poles must be real or come in complex conjugate pairs.


which is not the case for your example. With the given values of the vectors z and p you can do the following:


num = poly(z);
den = poly(p);


which gives

1.00000 + 0.00000i  -0.37545 - 0.77876i   0.09714 - 0.02978i

for num, and

1.00000 + 0.00000i   0.83665 + 0.07610i   1.00092 + 0.10802i

for den. Note that these are different from the coefficients of your 'expected transfer function'. However, these coefficients correspond to the given pole and zero locations.

Also note that one of your poles lies outside the unit circle, so your filter is unstable.