In a large bowl, beat butter, brown sugar, cinnamon and ginger on medium speed electric mixer for about 1 minute. On low speed, stir in flour until just mixed in and crumbs begin to form, about 15 seconds. DO NOT OVERMIX. Mixture should be crumbly, not smooth. Set aside.
Preheat oven to 325 degrees. Spray an 8-inch square pan with vegetable cooking spray.
CAKE: Sift flour, baking powder, baking soda, salt, ginger, cinnamon, and cloves together; set aside. In a small bowl mix coffee with a small amount of milk to dissolve, then stir in remaining milk. Set aside.
In a large bowl, use an electric mixer on medium speed to beat butter and brown sugar until smooth, about 1 minute. Mix in eggs, molasses, and vanilla until blended, about 2 minutes. The mixture may look curdled. On low speed add half the flour mixture, mixing to incorporate. Stir the reserved coffee-milk to make sure the coffee is dissolved, and add to the batter, mixing just until blended. Add the remaining flour mixture, mixing just until incorporated and the batter is smooth. Spread batter evenly in the prepared pan. Spoon cranberries over the batter. Sprinkle reserved crumb topping over the cranberries.
Bake for 45 to 55 minutes, until a toothpick inserted into the center of the buckle comes out clean. The top may still look wet, so be sure to use the toothpick test. Cool in the pan on a wire rack, about 1 hour. Cut into squares and serve slightly warm or at room temperature, topped with whipped cream, if desired.