To prepare dough, combine cranberries and amaretto in a small bowl; set aside. Heat milk over medium-high heat in a small, heavy saucepan to 180° or until tiny bubbles form around edge (do not boil). Remove from heat; stir in sour cream. Cool to room temperature.
Dissolve yeast in warm water, and let stand 5 minutes. Place 1/2 cup granulated sugar, eggs, and egg yolks in a large bowl; beat with a mixer at high speed until thick and pale (about 2 minutes). Add milk mixture, yeast mixture, 1 teaspoon almond extract, and salt; beat until well blended.
Lightly spoon flour into dry measuring cups; level with a knife. Add 5 1/2 cups flour to egg mixture; stir until a soft dough forms. Turn dough out onto a floured surface. Knead until smooth and elastic (about 5 minutes); add enough of remaining flour, 1 tablespoon at a time, to prevent dough from sticking to hands (dough will feel tacky).
Place dough in a large bowl coated with cooking spray, turning to coat top. Cover and let rise in a warm place (85°), free from drafts, 1 hour or until doubled in size. (Gently press two fingers into dough. If indentation remains, dough has risen enough.) Punch dough down; cover and let rest 10 minutes.
Coat a 12-cup Bundt pan with cooking spray; dust with 1 tablespoon granulated sugar. Knead cranberry mixture, raisins, and almonds into dough. With floured hands, pat dough into an 8-inch circle. Form a 2-inch hole in center of dough; place dough in prepared pan, allowing center of Bundt pan to emerge through hole in dough. Gently press the dough into pan. Lightly coat top of dough with cooking spray; cover and let rise 45 minutes or until doubled in size.
Preheat oven to 350°.
Uncover dough. Bake at 350° for 45 minutes or until loaf is browned and sounds hollow when tapped. Cool in pan 5 minutes on a wire rack.
To prepare icing, combine powdered sugar, 1/4 cup milk, and 1/4 teaspoon almond extract, stirring with a whisk. Remove babka from pan, and place on a serving platter. Drizzle with icing; cool completely.