"Why do some houses have ice dams on the roof and others do not?"
The overview is below -- for details go to Ice Dams.
Ice dams develop when snow is on the roof, outdoor temperatures are only slightly below freezing, and there is spot or generalized heat loss from the house into the attic/roof section of your house that accumulates under the roof deck. The heat melts the bottom of the snow pack, the melted snow runs down the roof until it gets to the overhang of the roof. Without the heat from the house, the water freezes, creating an ice dam. The solution lies in finding a way to keep the roof cold whenever it is cold outdoors. The snow will either melt and run off the roof, or stay put.
Recent research from Canada Mortgage and Housing Corporation has pointed out new priorities for solving this problem. First and most important is warm air leakage from the house below -- air sealing the attic from the house. Second is good insulation to keep the heat in the house and away from the attic. Last (not first) is attic ventilation, to remove heat build-up that you could not prevent. Anywhere insulation touches the roof, the ventilation cannot keep the roof frozen and heat will flow through the insulation to melt the snow. Complicated roofs have more problems because the structure tends to block the cold ventilation airflow. Provide continuous airflow to the underside of the roof and you will have no more ice. Easily said, not always easy to do.
"Last year I installed a new roof on my 40 year old house. In doing so, I installed two new soffit vents so that the roof now has four vents. I was having - and continue to have - problems with ice dams forming. Are the vents not doing the trick, and what can I do to correct the problem?"
It almost makes me cry when I hear that someone has completely rebuilt their roof, making the new roof exactly the same as the old problematic roof. Good new houses have lots of attic insulation and no ice dams because they have built more space between the top of the outer walls and the roof -- enough space for a lot of insulation and a lot of ventilation both. When you build a new roof, you can raise it just enough to get that essential ventilation, but so many contractors just add more vents. The key is continuous venting that keep every square inch of the roof deck freezing cold, so that the snow doesn't melt on the bottom of the snow pack.
Electrical de-icing cables can be a workable Band-Aid solution to roof ice problems, but never a perfect solution. When nothing is going to work on your house short of raising the roof higher to provide for more insulation and more ventilation, de-icing cables can provide a means to prevent water backing up under the shingles. It does not eliminate ice, it cuts drainage channels through the ice. One essential point is that the cables need to be properly on the roof, as well as along the bottom of the rain gutter, as well as down the downspout right out onto the ground. Otherwise the water will stop flowing somewhere and back up again.