Cut the cauliflower into quarters (or in half if you have tiny cauliflowers). Leave any cauliflower leaves attached at the base. Just trim them back a touch so that the top of the cauliflower is exposed.
Fill a large pot with well-salted water – I use a tablespoon of salt per quart (litre) of water. Place the pot over high heat and bring the water to a rolling boil. Blanch the cauliflower in the boiling water for 2 minutes. Press down on the cauliflower with a spatula to keep them submerged. You may need to blanch them in batches if all the cauliflower can't fit into the pot. Transfer to a colander and drain well.
Preheat a conventional oven to 400 °F (or 360 °F for a convection oven).
Mix all the ingredients for the harissa butter marinade in a medium-sized bowl. Rub each piece of cauliflower in harissa butter and place them on a large parchment-lined, rimmed baking sheet cut side down (so that the outer leaves are exposed). The baking sheet should be large enough that there is space between the cauliflower pieces. Distribute the onion wedges across the gaps, and spoon the remaining harissa marinade over the veggies.
Roast for 30 minutes. Baste the cauliflower and onions with the harissa juices from the baking sheet. Then turn the heat down to 370 °F (340 °F in a convection oven) and continue to roast for another 30 to 40 minutes, basting twice, until the cauliflower is well-browned, the leaves are crispy, and the inside soft.
Transfer everything to a serving platter. And drizzle with the remaining harissa butter and browned aromatics from the baking tray. Serve at once, with a generous grind of black pepper, salt (use Maldon flakes if you have them) and the lemon wedges alongside.