Preheat the oven to 350 degrees. Lightly grease a 9-inch square baking dish and set aside.
In a large mixing bowl, cream together the butter and sugar for the cake. Beat in the egg. In a smaller bowl, whisk together the flour, baking powder, baking soda and salt. Add the dry ingredients to the creamed butter/sugar mixture alternately with the buttermilk, beating just until moistened. Fold in the chopped rhubarb. Pour the batter into the prepared pan and smooth the batter to the edges.
In a medium bowl, combine the streusel topping ingredients, mixing them together until the mixture is coarse and combined. Sprinkle the streusel evenly over the batter. Bake for 40-45 minutes or until a toothpick comes out clean and the top of the cake is lightly browned. Cool on a wire rack.
For the sauce, melt butter in a medium saucepan. Add the sugar and milk. Bring to a boil; cook and stir for 2-3 minutes or until slightly thickened (it will thicken more as it cools slightly). Remove from the heat; stir in the vanilla. Serve warm with the cake.
Notes
Buttermilk: here is a guide for making your own buttermilk. Cake/Cupcakes: I doubled this cake – it was too much batter for a 9X13-inch pan so I made 9 cupcakes in liners (filling them about 1/2 to 2/3 full) and a 9X13-inch cake. The cupcakes baked for about 23-25 minutes, the cake for about 40 minutes.