Rinse corned beef under cold water to remove excess brine and pat dry.
Place brisket in a large pot or Dutch oven; add onion, garlic, bay leaves, peppercorns and the spice packet.
Pour in water or low-sodium beef broth to just cover the meat.
Add brown sugar and cider vinegar if using; bring to a gentle simmer over medium heat.
Reduce heat to low, cover, and simmer gently for 2½–3 hours until fork-tender.
Prepare carrots and potatoes and set aside; cut cabbage into wedges.
When brisket is nearly tender (about 30–40 minutes left), add potatoes and carrots to the pot.
Place cabbage wedges on top of vegetables, cover, and cook 15–20 minutes until cabbage is tender but not mushy.
Remove brisket and let rest 10–15 minutes before slicing against the grain.
Transfer vegetables to a serving platter, slice brisket, dot with butter and garnish with parsley. Serve hot.