Preheat your oven to 325 degrees F.
Place the pork into a large baking dish or Dutch oven. Season the meat all over with salt and pepper.
Place the remaining braising ingredients into the vessel. (If you used fresh limes and oranges for the juice, add the rinds). If the liquid is not covering the meat up to the halfway mark, add enough water to do so.
Cover the cooking vessel with a lid or aluminum foil. Place in the preheated oven and cook for 2 to 2 1/2 hours. Check the pork for tenderness by poking with a fork. If the fork easily penetrates the pork, remove it from the oven. If it is still tough, cover and cook for another 45 minutes and check for tenderness. Repeat as needed.
When tender, remove the lid/foil and let the meat rest at room temperature for about 30 minutes in its cooking liquid. (At this point the pork can be placed in the refrigerator for up to 3 days).
Remove the pork from the cooking vessel and place into a large bowl or platter. Discard the cooking liquid and solids. When the meat is cool enough to handle, shred it apart into large pieces.
Heat the fat/cooking in a large heavy heavy-bottomed skillet over medium-high heat. Once it starts to shimmer, carefully add the pork, followed by the onions.
Let the meat cook on one side until it crisps up to a nicely browned color (this can take between 1 to 3 minutes).
Turn off the heat to the stove. Carefully flip the pork over to the other side. Add cilantro and lime juice to your liking. Season to taste with salt and pepper. Add more lime juice and cilantro to your tastes.