Pour stock into a large pot set over medium heat, and bring to a simmer. Stir in the cubed ham and 2 tablespoons rosemary.
In a large skillet over medium heat, cook diced bacon until crisp. With a slotted spoon, remove bacon, and add to pot. Drain half of the bacon grease, and return skillet to medium heat. Stir in onions, leeks, garlic, and green onions; cook until tender, then add to pot.
Place cubed potatoes, carrots, and 2 tablespoons rosemary in pot; simmer until vegetables are tender, about 20 minutes. Turn off heat, and add cream to pot.