Dice or shred the potatoes, skin on or off is up to you. For diced potatoes, add to a saucepan and cover with water, bring to a boil the reduce heat for about 4 minutes to soften the potatoes, drain well and set aside. For the shredded, rinse several times squeezing out the water, drain and set aside.
Heat your oven to 180 C, lightly grease a 2.3 to 3 liter casserole dish with butter.
In a large skillet over medium heat, add a splash of olive oil, when oil is heated and add the onion and cook until soft, then add the ground beef and brown, then add the mushrooms and cook for another minute or two. Drain fat and season with salt and pepper to taste, pour this into the casserole dish.
Add the potatoes to the dish covering the beef. Sprinkle with salt and pepper to your liking. Sprinkle the shredded carrot over the potatoes. Mix the soup, sour cream, and milk in a bowl, and spoon this mixture evenly over the potatoes.
Cover tightly with foil and bake for 50 minutes or until the potatoes are tender. Remove the foil and sprinkle the cheese evenly over the top, bake for another 5 to 10 minutes or until the cheese is melted.