Preheat your oven to 350°F (175°C). Grease and flour two 8-inch round cake pans and line the bottoms with parchment paper.
In a medium bowl, whisk together the flour, cocoa powder, baking powder, baking soda, and salt.
In a separate large bowl, whisk the granulated sugar, brown sugar, eggs, vegetable oil, Greek yogurt, and vanilla extract until well combined. Stir in the finely grated carrots.
Pour the dry ingredients into the wet ingredients and mix with a spatula until just combined. Be careful not to overmix.
Divide the batter evenly between the two prepared pans and spread into a level layer. Bake for 20 to 25 minutes, or until a wooden skewer inserted into the center comes out with a few moist crumbs attached.
Let the cakes cool in their pans on a wire rack for 10 minutes. Then, carefully invert the cakes onto the rack, peel off the parchment paper, and allow them to cool completely to room temperature.
To make the frosting, beat the softened cream cheese and butter in a large bowl with an electric mixer on medium speed until smooth and creamy. Add the sifted powdered sugar, sifted cocoa powder, salt, and vanilla. Mix on low speed until combined.
Increase the mixer speed to medium-high and beat for 2 to 3 minutes until the frosting is light and fluffy. If it's too thick, mix in milk one tablespoon at a time until you reach a spreadable consistency.
To assemble, place one cooled cake layer on a serving plate or cake stand. Spread about a third of the frosting evenly over the top. Place the second layer on top and use the remaining frosting to cover the top and sides of the cake.