Preheat oven to 325 degrees F. Grease and flour 9x13-inch glass baking dish.
In a medium saucepan, combine the butter, shortening, cocoa and water. Bring to a boil and set aside to cool.
In a large bowl, whisk together the flour, sugar, buttermilk, baking soda, cinnamon, vanilla and eggs. Add the chocolate mixture and mix well. Pour the batter into the prepared baking dish. Bake for about 30 minutes, or until toothpick inserted into the center comes out clean.
While the cake is baking, prepare the icing. In a medium saucepan, bring to a boil the butter, cocoa and milk. Add the vanilla and powdered sugar. Then add marshmallows and stir until smooth. Pour the warm icing over the hot cake. Let cool completely, then cut and serve.