Labor intensive? Yes. But, oh so worth it! This recipe makes two braids. I'll serve one to guests the next day,and freeze one to serve up to a month later (cream cheese doesn't stand up to being frozen beyond that, but it should be okay within a 30 day or so time frame).
To prepare sweet dough: Mix 1 cup flour, sugar, yeast, and salt in bowl. Heat milk and butter in saucepan over low heat until a thermometer reads 115-120 degrees.
Beat milk mixture into flour mixture. Beat in eggs, vanilla, and 1 cup flour. Stir in enough additional flour (about 2 cups) to make a soft dough.
Turn out dough onto lightly floured surface. Knead dough about 5 minutes or until smooth and elastic. Add additional flour to prevent sticking if necessary. Shape dough into a ball. Place in a large greased bowl. Turn dough over so that top is also greased. Cover with a towel and let rise in a warm place 1 1/2 to 2 hours or until doubled.
Punch down dough. Knead dough on lightly floured surface 1 minute. Cover with a towel and let rest 10 minutes.
Grease or spray two large baking sheets. Combine cream cheese, sugar, egg yolks, flour, and almond extract in large bowl. Beat until smooth.
Cut dough in half. Roll each half into a 12x9 rectangle and transfer to prepared baking sheets.
Score dough lengthwise into 3 sections. Don't cut completely through dough. Spread half of cream cheese mixture on each center section.
Cut dough on the outer sections into 1 inch diagonal strips, cutting to within about 1/2 inch of filling.
Starting at one end, fold strips over filling, alternating from left and right, overlapping strips in center to form a braid. Cover braids with towels and let rise in a warm place for about 45 minutes or until doubled.
Preheat oven to 350. Mix reserved egg whites with 1 Tbl water. Brush braids with egg white mixture. Sprinkle almonds over braids.
Bake 25-30 minutes or until braids are golden brown. Rotate baking sheets from top to bottom racks halfway through baking. Immediately remove from baking sheets and cool on wire racks.