Preheat the oven to 350ºF.
In a saucepan combine butter, coke, semi-sweet baking square. Bring to a boil- remove from heat and add marshmallows and stir until blended and the marshmallows disappear. Set aside and cool to room temperature.
In mixing bowl blend the shortening, oil, vanilla, and sugar until fluffy. Add eggs and buttermilk and beat until smooth.
In another bowl mix flour with baking soda, cocoa, baking powder and salt. Add half of the flour mixture to shortening, egg mixture, and beat. Scrape bowl time to time to clean the sides off so ingredients are blended in the batter.
Add cooled coca-cola mixture and beat. Add remainder of flour and beat until completely smooth about 3 - 4 minutes. The batter will be thick.
Place batter into a 13" x 9" x " 2 greased and floured pan. Put pan on top shelf of oven for 35 - 40 minutes. Check for completed baking time with a toothpick. If the toothpick comes out clean by sticking in the middle of the cake its time to come out of the oven and cool.
In a bowl cream together margarine, cocoa, confectioners' sugar. Slowly add the 6 tablespoons of heavy cream. Add in vanilla. Frost warm cake.