For the homemade ice cream: Prepare an ice bath and set a mixing bowl in the bath. Pour 1 cup of the cream into this bowl and allow to chill.
Whisk the egg yolks together in a medium bowl.
In a saucepan, mix the other cup of cream, the milk, sugar and salt. Stir over medium heat until the sugar has dissolved and bubbles start to appear on the edge of the pot. Pour half of the warm cream mixture into the egg yolks, whisking constantly to prevent the eggs from curdling.
Pour the egg and cream mixture back into the saucepan and use a rubber spatula to stir over low heat until the custard thickens enough to coat the spatula. (If the custard overheats or boils, it will curdle.) Strain the custard into the cream sitting in the ice bath and stir until the mixture is cooled completely. Refrigerate for 5 hours or overnight.
For the habanero cajeta: Bring the milk to a boil in a very heavy large saucepan. Reduce to a simmer, add the sugar and stir to dissolve. (Since the cooking time is so long, it's very important that the sugar doesn't burn on the bottom of the pan.) Split the vanilla beans down the center and drop the 4 halves into the hot milk and sugar. Drop the whole habanero pepper into the pan.
Once the mixture is simmering nicely, dissolve the baking soda in a small amount of cool water and add it to the cajeta. It will begin to foam; keep stirring it in for about a full minute. If it seems like it might foam up over the edge, quickly turn off the heat for a moment.
There's not much to do for the next couple of hours except be certain that the mixture is over a low enough heat so that the milk doesn't boil or burn. Also, stir it every 15 minutes or so to be certain nothing is sticking to the bottom of the pan. You'll see the color go from white to beige to brown. Remember to sneak a taste occasionally to discover when to remove the habanero pepper. Make it as "hot" as you wish. Remember, you won't be able to taste the pepper, just the heat.
As the cajeta cooks, it will, of course, also thicken. As it reduces, it becomes important to stir even more frequently. Towards the end, one should be stirring every few minutes. What's the end? We're aiming for a "soft-ball stage," which means that if you drip one drop into a glass of cool water, it will coagulate into a ball which is still malleable. Once it's cooled, strain the caramel through a mesh strainer into a jar and keep refrigerated. Don't worry if you cook it a little too long and it seems too thick once cooled. Simply gently reheat and add back in a little more water or milk until it reaches a pourable consistency.
For the graham crackers: In the bowl of an electric mixer, combine the flour, brown sugar, baking soda and salt. Add the butter and mix on low until the mixture is the consistency of coarse meal.
In a small bowl, whisk together the honey, milk and vanilla. Add to the flour mixture and mix.
On a sheet of plastic wrap, pat the dough into a flattened square and then place in the freezer until thoroughly chilled.
Preheat the oven to 350 degrees F. Line 2 baking sheets with parchment paper.
Because this dough is very sticky, work quickly. Divide the dough in half and return one piece to the refrigerator. On a floured surface, roll the dough out until approximately 1/4 inch thick. Cut into desired shapes (5- by 3-inch rectangles work nicely) and place on a lined baking sheet. Repeat with the second half of the dough. Sprinkle with cinnamon, cocoa and sugar.
Bake until the edges start to brown, about 20 minutes. Let cool on the baking sheets for 5 minutes, and then transfer to a wire rack to cool completely.
Choose 3 of the prettiest crackers to use as a garnish. Crush the remaining crackers into 1/2-inch pieces and place in the freezer.
To finish the ice cream, pour the chilled custard into the bowl of an ice cream maker and process according to the manufacturer's instructions. Add the crushed graham crackers during the last 5 minutes of processing.
To serve: Top each serving of ice cream with a generous helping of warm cajeta.