In a large mixing bowl, combine butter, sugar, egg and vanilla; beat until light and fluffy, scraping the bowl occasionally.
Combine the flour, baking powder and salt; add to the creamed mixture until thoroughly combined. Cover and refrigerate at least 1 hour.
In a small bowl, combine cranberries, walnuts and orange peel; set aside.
On a lightly floured surface, roll dough into a 10-inch square.
Combine brown sugar and milk; spread over the dough then sprinkle with the cranberry mixture, leaving about a 1/2-inch edge at both ends of the dough.
Roll up tightly, jelly-roll style. Wrap with waxed paper; chill several hours or overnight.
Pre-heat oven to 375F. Coat cookie sheet with non-stick cooking spray, or grease with shortening. Cut roll into 1/4-inch slices and place on cookie sheet. Bake for 14-15 minutes, or until edges are light brown.