Gauss's law is always true as long as we remain in the classical domain, but applying it directly is not always useful. We can easily use Gauss's law to find the electric field in cases where there is appropriate symmetry. The case of an electric dipole is not one of these cases. Any Gaussian surface enclosing an electric dipole encloses no net charge, so the flux through it should be zero; that is indeed true. But this is not like the case of a point charge, where we can apply spherical symmetry; a dipole selects a preferred direction, so there is no spherical symmetry; nor is there cylindrical symmetry like around a long straight wire or translational symmetry like near a flat plate. So while the total flux is zero, you can't immediately determine what the electric field is at any point on any Gaussian surface you write down; all you know is that the total flux is zero.To actually work out the field for an electric dipole you need to treat it as the superposition of a positive and negative charge. For a physical dipole with positive size this is all that needs to be done; for a theoretical point dipole, you need to take the limit as the size goes to zero while the dipole moment stays constant. Of course, you can regard this as ultimately going back to Gauss's law; you just have to apply it twice, once to each charge separately, and use superposition to get the net field.