Melt the butter in a small pan, stir in the garlic and saffron, and cook over low heat for a few minutes. Stir in the honey and lemon juice. Remove from the heat and allow to cool.
Season the chicken pieces on both sides generously with salt and toss in a shallow dish with the marinade. Marinate overnight turning it once.
Remove from the refrigerator and allow it to be room temperature.
In a small container place the saffron strands and add 1 cup of hot water. Set aside
In a large pan add the rice cover it with water and add salt. Let it stand for A couple of hours. Rinse the rice and change the water one more time. Let it rest for another 30 minutes. Rinse and set aside.
Bring a boil a large pot of salted water and cook the rice for about 5 to 8 minutes or until it still has a bite to it, al dente. Do not let it go soft. Drain and set aside.
Meanwhile, in a large skillet melt and warm up the 2 tablespoons olive oil and 1 tablespoon butter. Add the onion and gently cook them until translucent. Add the cranberries, almonds, dates. Season with salt and pepper. Stir into all the ingredients are well incorporated.
In a shallow round pan with a fitting lid, place 1 tablespoon olive oil and 2 tablespoon butter. Add half of the cooked rice and spread it to cover the bottom of the pan. Add the onion mixture to form a layer. Cover the mixture with the remainder of the rice. Spread the saffron with the water all over it. Add ¼ cup more water to the pan. Add the remaining oil and butter on top of the rice. Place over medium-high heat covered and making sure that all the steam stays inside. Place a towel between the pan and the lid. Let it cook without touching it until the sides are turning a nice golden color.
Meanwhile, in a large skillet add the olive oil and warm over medium-high heat. Add the chicken skin side down first and sauté until the skin is super crispy (It will look burned as it is normal because of the honey).
Turn and cook the other side. Lower the heat to medium and continue cooking the chicken until done.
Remove the lid, invert on a large serving platter over the pot and carefully flip over. Not to worry if stick as you can scrape it and add it to the plate.
Serve alongside the chicken.