  We study CP violation in a multi-Higgs doublet model based on a $S_3 \times
Z_3$ horizontal symmetry. We consider two mechanisms for CP violation in this
model: a) CP violation due to complex Yukawa couplings; and b) CP violation due
to scalar-pseudoscalar mixings. We find that the predictions for
$\epsilon'/\epsilon$, CP violation in B decays and the electric dipole moments
of neutron and electron are different between these two mechanisms. These
predictions are also dramatically different from the minimal Standard Model
predictions.
