Preheat oven to 350°. In a large bowl, cream butter and sugar until light and fluffy, 5-7 minutes. Add eggs, one at a time, beating well after each addition. Add extracts. Combine flour, baking powder and salt; gradually add to creamed mixture alternately with eggnog, beating well after each addition. Pour into two greased 9-in. round baking pans.
Bake until a toothpick inserted in the center comes out clean, 25-30 minutes. Cool in pans for 10 minutes before removing to wire racks to cool completely.
For frosting, in a small saucepan, combine flour and salt. Gradually stir in eggnog until smooth. Bring to a boil over medium heat whisking constantly; cook and stir until thickened, about 2 minutes. Cool to room temperature.
In a large bowl, cream butter and confectioners' sugar until light and fluffy. Gradually beat in eggnog mixture and vanilla until smooth. Spread between layers and over top and sides of cake. If desired, decorate with decorating gel. Store in the refrigerator.
This recipe was tested with commercially prepared eggnog.