Preheat the over to 350 degrees F. Coat a 12-cup muffin tin with cooking spray or line with paper baking cups.
In a large mixing bowl or the bowl of an electric mixer, beat the avocado puree, sugar, milk, vanilla, and vinegar until smooth. Beat in the egg whites one at a time, just until incorporated.
Add the flour, cocoa powder, baking soda, and salt, and mix until smooth. Divide the batter among the muffin cups. Bake until the tops of the cupcakes are lightly browned and spring back to the touch, 15 to 20 minutes. Turn out onto a rack to cool completely before frosting them.
For the frosting, beat together the cream cheese, cauliflower puree, vanilla, and salt until smooth. Spread over the cooled cupcakes.
Store the cupcake in an airtight container at room temperature for up to 2 days, or freeze for up to 1 month.
*I found these cupcakes to be tasty but very dense. That could be a result of baking at high altitude or just from the batter itself. For the frosting, I find 2 tablespoons of vanilla extract to be a bit much. I suggest starting with 1 tablespoon and add more to taste. My girls preferred them without the icing and never ate more than half of a cupcake at a time.