waveport sizing
You need to define the port so that it supports multiple modes. After simulating, check HFSS->Results->Solution Data to see if just one mode propagates. Then, you can make the port bigger, which will make it a little more accurate (captures more fringing fields) as long as no second mode appears.
"after this i optimize Zo at the port to 50 ohm by changint the waveport dimension" - if I understand correctly, you are not changing real Zo, you are just creating an error in the simulation which offsets the deviation in physical Zo for your structure. Seems like a recipe for trouble. Better to rely on mode propagation to verify the port, rather than changing the port size this way.
But really, the emtalk results should be relative accurate from the beginning. (I haven't checked them, but there is no one exact port size that you must use. Even if emtalk's size is not ideal, the error caused is probably small.)