Why does food coloring repel from soap in milk?

The effect you describe is the result of surface tension. Surface tension is the force that causes the surface of a liquid to contract and form a thin film. In the case of milk, the surface tension is caused by the proteins and fats in the milk. When you add food coloring to milk, the food coloring molecules are attracted to the water molecules in the milk, but they are repelled by the proteins and fats. This causes the food coloring molecules to form a thin layer on the surface of the milk. The surface tension of the milk then causes this layer of food coloring to contract and form droplets, which repel from the soap.