Cut the cold cream cheese into cubes and place in a large mixing bowl with the vanilla extract.
Using a stand mixer with the whisk attachment or a handheld mixer with beaters, beat together the cream cheese and vanilla until combined.
On medium speed, gradually add the powdered sugar, stopping occasionally to scrape down the sides of the mixing bowl.
Next, add the cocoa and mix on medium speed until the mixture is smooth, thick and glossy.
On low speed, slowly stream in the cold heavy whipping cream until it is incorporated into the cream cheese mixture.
Increase the mixing speed to medium-high and whip together until stiff peaks form.
Notes
Use cold cream cheese. This ensures it blends well with the cold heavy whipping cream.
Cut cream cheese into cubes. Dice the block of cream cheese into small pieces and add your vanilla to the mixer at the same time to provide a splash of liquid for smoother mixing.
Choose your attachment. Use the stand mixer whisk attachment for the entire process instead of starting with the paddle and switching to the whisk. A handheld electric mixer with basic beaters will also work.
Beat until smooth. The cream cheese, vanilla, powdered sugar and cocoa powder should be a smooth consistency before adding the heavy whipping cream. This will prevent any lumps in your frosting.
Stream in the heavy cream. Pour the heavy whipping cream into the cream cheese mixture gradually. This will allow the two bases to blend evenly before ramping up the mixer speed.
Watch for stiff peaks. Turn the mixer off once the frosting holds its shape. Over mixing will cause it to separate and curdle.