In a medium mixing bowl, add 2 cups flour, sugar, baking powder, and salt. Use a whisk to combine.
In a separate mixing bowl, add milk, beaten eggs, vanilla extract, and butter extract. Use a whisk to combine.
Slowly add dry ingredients to wet ingredients while continuing to whisk together until no lumps remain. Set aside while heating the oil.
In a skillet with deep sides over medium heat, add enough vegetable oil to fill the skillet 1½ to 2 inches deep. Heat the oil to 350°F. Use a thermometer to test the temperature. If the oil is too hot it will quickly cook the outside without proper cooking inside of the funnel cake.
Fill a piping bag with a large round tip on the end with ⅓ of the funnel cake mixture if making 3 large funnel cakes, or ⅙ of the mixture if making medium funnel cakes.
With your finger on the piping tip hold the bag 3 to 4 inches above the hot oil. Remove your finger and gently squeeze while drizzling the batter into the oil. Make a round circle with the batter to start, then drizzle the batter across the circle in one direction, then drizzle across the circle in the opposite direction. Complete the funnel cake with another circle on the top to close it. Let cook in the oil until it is golden brown. Use tongs to carefully flip the funnel cake over. Allow the other side to cook until golden brown.
Remove funnel cake from the oil and place it on a paper towel-lined baking sheet. Dust with powdered sugar and serve warm.