Position one rack in the center of the oven and preheat to 350 degrees. Oil the sides and bottoms of two 9-inch round cake pans and line the bottoms with parchment paper cut to fit.
Place a wire mesh strainer over a medium bowl. Add the pastry flour, white flour, cocoa, sugar, baking powder, baking soda, salt, and cinnamon to the strainer. Tap the strainer against the palm of your hand to sift the ingredients. Stir with a wire whisk to distribute the ingredients.
Whisk the oil, maple syrup, soy milk, vanilla and almond extracts and vinegar in a separate medium bowl until well blended.
Pour into the dry mixture and stir with a wire whisk until the batter is smooth. This batter is meant to be thin; don't worry.
Divide the batter evenly between the two prepared pans. Tap the pans lightly on the counter to eliminate air bubbles.
Bake for 25 to 30 minutes, or until the tops are set, the sides have started to pull away from the pan, and a cake tester (or toothpick) inserted in the center of the cake comes out clean or with only a few moist crumbs.
Cool the pans on wire racks for 10 minutes. Run a thin knife between the cake and inside of the pan, and invert each layer onto a rack. Remove the pans and carefully peel off the parchment paper. Invert again topside up on a rack to cool completely.
To protect the layers from cracking or breaking, slide a cardboard circle (or another flat surface) under each one. Wrap the layers with plastic wrap and refrigerate until cold before filling and frosting.
Unless you have a food processor with at least an 8-cup bowl, make the cream in two batches. The tofu will have to drain for 24 hours and the prepared cream may have to chill 1 to 6 hours to thicken, so this is a recipe to make ahead.
If you are using the 16-ounce packages of tofu, set a wire mesh strainer over a bowl. Put the tofu in the strainer, cover with plastic wrap, and refrigerate for 24 hours. It is important to choose a bowl that allows the strainer to sit above the liquid that will accumulate. (Draining the excess liquid helps reduce any bean flavor and creates a thicker cream.) If you are using tofu in the 12.3-ounce aseptic boxes, just drain the liquid from the boxes and proceed with the recipe.
Combine the tofu, oil, and salt in a food processor, and process about 1 minute until pureed. Use a rubber spatula to clean the sides of the bowl and add the sugar, cocoa, and vanilla. Process 1 to 2 minutes, until the tofu mixture is smooth.
Add the melted chocolate and pulse the processor three or four times to incorporate. Process 1 to 2 minutes until the mixture is very creamy. Give it a little taste; if it is not sweet enough for you, gradually add up to 1/2 cup powdered sugar, adding soymilk in tablespoons if it gets too thick, until it reaches desired sweetness. Refrigerate in the processor for 20 minutes. If you used the aseptic boxes of tofu, the cream may need to chill for 1 to 6 hours in order for it to become firm enough to spread.
The degree of firmness will determine the amount of soymilk needed to create the final texture. It should be thick but easy to spread. Dip an icing spatula into the cream to test to the texture. If the cream is too stiff to use, add 3 tablespoons of the soymilk and process 1 minute. Add more soymilk, 1 tablespoon at a time as needed. When the cream is ready to use, spoon it into a bowl and begin to assemble the cake.
While a cake-decorating turntable is nice to have, it is not essential for this cake.
To assemble the cake, place one of the layers bottom-side up on a serving plate. Tuck strips of parchment or waxed paper under the outside edge of the cake to catch any frosting that drips.
Use an icing spatula to spread about 1 1/2 cups of the cream frosting on the layer. (If the layer is uneven, spread more cream on the thinner areas.).
Set the second layer on it topside up, and press down lightly.
Spread about 1 1/2 cups of the frosting on top of the cake covering one section at a time. Push excess frosting off the top onto the sides adding more frosting as needed to cover the sides. Smooth or swirl the frosting as you like.
The cake is ready to serve immediately, but can be refrigerated up to 2 days. Use a long, sharp knife to cut the cake, wiping the blade as needed after each slice.