Mix ham stock with vegetable stock and heat. Taste and adjust seasoning, but salt only if needed.
In a large Dutch oven or heavy bottomed soup pot, heat oil over medium high heat and add bacon. Cook for 7-8 minutes until just short of crispy.
Add leeks, celery, and carrots and cook for five minutes. Add garlic and cook for one minute.
Add stock, thyme, bay leaves, tomato, and optional parmesan rinds. Bring to a boil and reduce to a simmer.
Simmer uncovered for about 15 minutes or until vegetables are just short of tender. Add potatoes and kale and bring back to a boil then simmer until tender, about five minutes.
Add corn, beans, and diced ham and simmer five minutes.
Stir in cream and remove from heat.
Pick out bay leaves and parmesan rinds and discard. Serve immediately.