Preheat your oven to 375°F (190°C). Line your baking sheet with parchment paper, ensuring it fits snugly.
In a medium bowl, whisk together the all-purpose flour, baking powder, and salt. Set aside.
In a large mixing bowl, beat the eggs and granulated sugar using a hand mixer or stand mixer on high speed for about 5 minutes until the mixture is pale and fluffy.
Once the egg mixture is fluffy, add the vegetable oil, vanilla extract, and almond extract. Mix until well combined.
Gradually fold the dry ingredients into the egg mixture using a spatula. Be gentle to maintain the airiness of the batter.
Divide the batter evenly into six bowls. Add gel food coloring to each bowl to create your rainbow colors. Start with red and work your way through to purple, mixing each bowl until the colors are vibrant.
Pour each colored batter into the prepared baking sheet, layering them side by side. Use a spatula to spread the batter evenly across the pan.
Bake in the preheated oven for 12-15 minutes, or until the cake springs back when gently pressed.
Once baked, remove the cake from the oven and let it cool for about 5 minutes. Carefully invert it onto a clean kitchen towel dusted with powdered sugar. Peel off the parchment paper and roll the cake tightly in the towel, starting from one end. Allow it to cool completely in this rolled position.
In a large bowl, beat the softened butter until creamy. Add the clear vanilla flavoring, almond extract, and powdered sugar, mixing until smooth. Gradually add the heavy cream until you reach your desired consistency.
Once the cake is cool, carefully unroll it. Spread the filling evenly across the surface of the cake using a spatula.
Roll the cake back up without the towel, and wrap it in plastic wrap. Chill in the refrigerator for at least 1 hour before serving.