Put the stock in a large pan with the beef bones, one onion, the carrot and celery. Simmer with the lid on for two hours. Strain the stock through a fine sieve and set to one side.
In a large pan and cook the four large chopped onions in the butter over a low heat until they are starting to caramelise (about 15 minutes). Add a third of the white wine and deglaze the pan by stirring the bottom to loosen all the browned onion.
Allow the onions to caramelise again and then deglaze with another third of white wine. Repeat this process using up the wine and until the onions are really soft.
Stir in the flour and cook for a minute, before adding 1.5 litres/2½ pints of the stock. Stir well, add the potato and simmer for 40 minutes.
Remove the soup from the heat, leave to cool slightly and then blend with a hand-held blender until smooth. Check the consistency, and if it seems too thick, add a little more stock or water.
Blanch the cavolo nero in a pan of the remaining boiling stock. Pour this stock and cabbage into the soup.
Mix together the cheeses in a small bowl and preheat a grill to hot.
Cut the baguette into thin slices and then toast on both sides. Ladle the soup into bowls and top with a slice of baguette with the cheese mixture sprinkled over. Place under a hot grill until the cheese is bubbling.