Place the cold heavy cream in a large mixing bowl and whip on medium speed (I used a stand mixer but you could use a hand mixer instead) until it turns to whipped cream. Whip past this point until it is yellow and chunky. It slightly resembles butter at this point but don’t be fooled, you still have to allow the buttermilk to separate from the butter. Use a spatula to push down any cream that has splashed to the sides. Keep mixing until the buttercream separates from the butter. This happens very suddenly, you'll see liquid appear separately from the solid butter.
Using a spoon or spatula, press the butter together and remove it from the buttermilk. Wrap it in a cheesecloth and place it in the ice water. Squeeze the butter in all directions to get the remaining buttermilk out of the butter. The water will turn cloudy, you can dump and refill the ice water multiple times until the water remains clear to make sure you are squeezing out all of the buttermilk.
Take the butter out of the cheesecloth and place it on a hard flat clean surface, like a cutting board. Pat it dry with a paper towel or cloth and then mix the salt into the butter by pressing and folding with your spatula. Feel free to also use your hands for this, but your hands are warm and will quickly melt the butter so work quickly!
Press the butter into any shape you wish with a spoon or spatula. A block of butter or you can pack the butter tightly into an airtight container and use it as desired.
Notes
All ingredients must be very cold at all times or the butter will not solidify. You can pop it into the fridge for 10 minutes if it starts to melt. Some suggest using room temperature heavy cream but for me the very cold methods work best to quickly separate the buttercream.
It is very important to get the buttermilk out of the butter (by squeezing it in cold water) or it will go bad very quickly. You can also squeeze the butter under running cold water, but this ends up being messy.