In a large mixing bowl, cream butter and sugar until light and fluffy. Add eggs, one at a time, beating well after each addition. Beat in lemon peel and vanilla. Combine the flour, baking soda, baking powder, and salt; add to creamed mixture alternately with sour cream, beating well after each addition (batter will be thick).
Fill greased or paper-lined muffin cups with 1/4 cup of batter. Bake at 350°F for 25 to 30 minutes or until a toothpick comes out clean. Cool for 10 minutes before removing from pans to wire racks to cool completely.
For the frosting, cream butter and confectioner's sugar in a small mixing bowl until light and fluffy. Add the lemon juice, vanilla, lemon peel, and milk; beat until smooth. Frost cupcakes.