Preheat oven to 350 degrees.
Line three 8" square pans with parchment, making sure there is an overhang on the sides (see photo)
Sift the flour, baking powder and salt in a bowl. Set aside.
In the bowl of an electric mixer, beat sugar and butter until light and fluffy. About 3 minutes. Add the almond paste, silken tofu and vanilla. Beat until thoroughly combined. Add the flour and milk, alternating between wet and dry but begin and end with the flour, beating well after each addition and continue to beat for another minute or so after the last addition.
Divide the batter evenly between three bowls. I used a scale to get them as close as possible.
Using vegetable dyes, tint one batter green, one batter red and leave the other uncolored. I used 3 drops of green but found that I needed 5 of the red to avoid it being pink.
Transfer batter to each of the three prepared 8" square pans.
Bake for 20 minutes or until a toothpick comes out clean. DO NOT REMOVE FROM PANS. Let cool completely in the pans on wire racks. Loosen edges with a sharp knife.
Using an offset spatula, spread one half of the jam onto the green layer still in its pan. I heated mine for about 20 seconds in a bowl to loosen it up enough to spread.
Unmold the plain cake layer and peel off the parchment ([b]reserve this parchment sheet[/b]) and set it on top of the green layer and top with the remaining jam.
Unmold the red layer and place it on top of the plain layer and cover with the reserved parchment sheet. Using one of the unmolded 8" cake pans, place it on top of the parchment and find some very heavy cans to put inside. Place in the refrigerator for 4 hours, or overnight.
Unmold the cake and using a serrated knife, trim the edges to make them straight and remove any browned areas.
Melt the chocolate in a bowl over a pan of simmering water.
Pour onto just the top of the cake. Dip an offset spatula in hot water and smooth the top.
Let set slightly. Then, using a fork, scrape wavy lines into the chocolate.
Let cool for a few more minutes until the chocolate is mostly set but still slightly tacky.
Using a serrated knife dipped into hot water in between slices and wipe with paper towel, cut the cake into thirds in one direction. Cut each third into 1" pieces.
Store in an airtight container at room temperature for up to 1 week.