Add the water and remaining stock ingredients. Bring to boil, skimming any foam from surface.
Chill the meat. Remove meat from bones; cut away excess fat. Shred meat finely, you should have about 4-5 cups of meat. (Can be made 1 day ahead. Cover meat and chill. Keep stock chilled.)
Preheat oven to 375°F. Arrange beets in single layer in a baking dish; add 1/2 cup water. Cover; bake beets until tender when pierced with knife, about 1 hour. Cool beets. Peel and cut into small dice.
Remove fat from surface of stock.
Melt 1 tablespoon butter in heavy large pot over medium-low heat. Add diced carrots and chopped onions and sauté 10 minutes.
Add cabbage and garlic and sauté 5 minutes. Add 5 cups beef stock, beets, potato, caraway seeds, paprika, 1/2 tsp each salt and pepper, and 1 tablespoon red wine vinegar. Simmer until cabbage and potato are tender, about 20 minutes.
Add the shredded meat; simmer 5 minutes. Season with additional red wine vinegar, salt and pepper as desired.
Ladle borscht into bowls. Top each with dollop of sour cream, fresh dill, and serve.
This soup freezes well if you find you have too much left over.
Option: make and freeze the stock and meat in containers, each divided into two portions. Then you can have one container of stock and one container of meat ready to go, and all you'll have to do is roast up half of the beets etc.
Feel free to use any cabbage you have on hand, whether red or napa etc.
You can make this vegetarian by using vegetable broth in place of the stock.