Boil ham bone in 4 c of water for a couple of hours. Remove bone and any ham that is left on it, you may want to strain your broth.
Dice and carrots into med. size cubes, dice onions and celery and mince garlic. Place in large soup pot with 1/4 c of olive oil and simmer on low till veggies are tender.
Peel potatoes and cut into cubes. Boil until fork tender. Add a little more oil if necessary and about 1/2 c of flour. Mix together till flour is absorbed. Add canned milk and mix to remove any lumps. Add ham broth. Simmer for about 10 min. Add drained potatoes.
Remove from heat and add grated cheese and and thyme. Stir constantly till melted. If cheese starts to become stringy or lumpy add a few sprinkles of lemon juice.