I've always had the CSC do inspection on the outside. You specify your email domain so it knows which email addresses are local and gives it a concept of incoming vs. outgoing email. If you then have it inspecting traffic between two servers inside that domain (you say between inside and dmz?) then maybe it's getting confused?
I would try doing the csc inspect on the outside interface.