Heat a small, heavy frying pan over medium heat. Add the cumin seeds and peppercorns to the pan; stir constantly until fragrant and beginning to brown, about 2 minutes. Cool.
Using a mortar and pestle, crush toasted spices with garlic, salt and oregano to make a paste. You can also do this in the small bowl of a food processor. Transfer to a small bowl, and stir in orange juice, lime juice, lemon juice, sherry and olive oil.
Place the pork in a large resealable plastic bag. Pour citrus marinade over meat, and seal. Refrigerate for 12 to 24 hours, turning the bag over occasionally.
Preheat the oven to 160 degrees C.
Transfer pork and marinade to a roasting tin and place in the oven. Roast for about 2 1/2 hours, basting with pan juices occasionally, or until an instant read thermometer inserted in the centre reads 63 C. Add small amounts of water to the pan if it dries out. Transfer the pork to a carving board, cover loosely with foil, and let rest for 15 minutes. Carve, and serve.