Lightly oil a 10 inch non-stick Bundt pan. (When I pour the mixture into my Bundt pan, it doesn't look very full--don't worry the cake will rise nicely as it bakes.).
In a large bowl, combine cake mix, eggs, pudding mix, 1/2 cup of cold water, 1/2 cup of oil, 1/2 cup amaretto and 1/4 teaspoon almond extract.
Blend well for approximately 3 minutes.
Pour batter into prepared 10 inch Bundt pan.
Bake at 350 degrees F. for 45 minutes to an hour, or until a toothpick inserted into the center of the cake comes out clean. In my oven, the cake bakes in just under 40 minutes, so start checking it around that time.
While cake is still warm, make the glaze.
Combine butter, sugar, water, and amaretto in a saucepan.
Bring to a boil, and continue cooking and stirring constantly until sugar is dissolved (1-2 minutes).
Poke holes in cake with toothpick or skewer, so that the glaze can really get into the cake.
Slowly drizzle glaze over cake, including edges and center of Bundt pan.
Allow cake to cool in the pan for at least 2 hours, after glazing.
Cool cake completely before putting on the frosting.
Topping (Frosting and almonds):
Lightly toast slivered almonds in a dry pan (no oil or cooking spray) over the stove on medium-high. It will only take a few minutes to brown them.
Stir frequently and be careful not to burn.
Heat approximately 1/2 of the prepared frosting in the microwave for 15 seconds, to soften.
Before frosting the cake, invert the cake onto a serving dish and use a spoon to drizzle the softened frosting over the cake. (Note: to avoid the cake sticking in the pan, or if you feel like you are having trouble getting the cake out of the pan~hold the pan over a hot burner (use your hot mitts) this melts the butter enough to loosen the cake from the pan).
Scatter toasted almonds over cake before frosting cools.