Beat the butter in the bowl of a stand mixer on high speed until light and fluffy. Add the powdered sugar, one third at a time, and beat on high speed for several minutes until mixture is light and creamy. Scrape the bowl and repeat the process until all of the powdered sugar is well incorporated. Beat in vanilla. You should now have a very stiff buttercream.
Add the cream cheese and beat on high for a couple of seconds to incorporate. Scrape bowl and beat on high again for a couple of seconds.
The frosting can now be spread on cake or cupcakes or chilled until it is firm enough to pipe. Store frosting and frosted baked goods in the refrigerator.
Notes
I've calculated the amounts of the ingredients in the recipe below for two different-sized batches. The "regular" amount will yield enough frosting to pipe onto 22 cupcakes, to frost a sheet cake or to fill and frost a small round cake. The "large" batch yields enough frosting for 24-30 cupcakes or to fill and frost a large round cake.