Preheat oven to 350 degrees F (175 degrees C). Grease and flour two 9-inch round cake pans.
In a medium bowl, whisk together flour, baking powder, and salt.
In a large bowl, cream together butter and sugar until light and fluffy. Beat in eggs one at a time, then stir in milk and ube halaya.
Gradually add dry ingredients to wet ingredients, mixing until just combined.
Divide batter evenly between prepared cake pans.
Bake for 25-30 minutes, or until a toothpick inserted into the center comes out clean.
Let cakes cool in pans for 10 minutes before inverting them onto wire racks to cool completely.
To make the frosting, cream together butter and powdered sugar until light and fluffy. Beat in milk and vanilla extract until smooth.
Once cakes are completely cool, frost the top of one cake layer and place the other layer on top. Frost the top and sides of the cake.
Decorate with sprinkles, if desired.