Trim the pork's fat cap to about 1/4 inch. Stir together the brown sugar, salt, black pepper, garlic powder, chili powder, smoked paprika, unsweetened cocoa, and cayenne, then rub it all over the pork.
Set the pork in the slow cooker. Stir the Worcestershire sauce and cider vinegar into the Dr Pepper and pour it down the side of the pot, not over the meat, so the rub stays put.
Cover and cook on LOW for 8 to 10 hours (or HIGH for 4 to 6 hours), until the pork is probe-tender and reaches about 200 to 205°F in the thickest part.
Transfer the pork to a bowl and shred with two forks, discarding any large fat pieces and the bone if bone-in.
Skim the fat from the cooking liquid, then spoon some of the juices back over the pork to moisten. Stir in the BBQ sauce to taste. Serve, or broil the shredded pork 5 to 8 minutes for crisp edges.
Notes
Oven / Dutch oven: Cover and roast at 300°F for 4 to 6 hours to 200 to 205°F. Uncover for the last 30 to 45 minutes to build bark.
Instant Pot: Cut into large chunks, use at least 1 cup liquid, pressure cook on HIGH 75 to 90 minutes, then natural release 15 to 20 minutes.
Bone-in vs boneless: Bone-in adds 30 to 45 minutes and stays a bit juicier; boneless is quicker and easier to shred.
Soda swaps: No soda? Use apple cider or apple juice for natural sweetness, or chicken stock/broth with a splash of cider vinegar for a savory braise. No molasses in your sauce? Use dark brown sugar, honey, or maple syrup, 1 to 2 tablespoons to start.
Keep it juicy: Save and skim the cooking juices; store and reheat the pork with a few spoonfuls stirred in.