Preheat oven to 350 degrees. Generously grease and flour a bundt pan. Set aside.
In a medium bowl, combine the flour, pudding mix, baking powder, baking soda and salt. Whisk together to combine. Set aside.
In a large mixing bowl, with a hand or stand mixer, cream together the eggs, butter and sugar until smooth. Add the vanilla and lemon extracts and lemon juice and lemon zest. Mix to combine. Add the oil and Greek yogurt and mix. Gradually add the dry ingredients a few spoonfuls at a time, and mix on low speed, stopping to scrape down the sides of the bowl.
Pour batter into the prepared pan, and bake at 350 degrees for 45-50 minutes or until toothpick inserted comes out clean and crumb-free.
Cool in the pan for 15-20 minutes. Gently loosen the cake by running a knife around the sides of the pan, and invert on to a cake plate or serving dish. Let cool completely.
Mix the frosting by creaming together the butter and powdered sugar, a 1/2 cup at a time. Gradually add the lemon juice and extract, and mix until creamy. Drizzle over the top of the cake. Slice and enjoy! Store in an airtight container at room temperature for up to 5 days.