Place potatoes in a large saucepan and pour in enough water to cover potatoes. Set pan over high heat and bring to a boil; reduce heat to medium and simmer 10 minutes, until potatoes are fork-tender. Drain potatoes, transfer to a large bowl with ghee, coconut milk, salt, ½ teaspoon garlic powder and ½ teaspoon dried dill ; mash until smooth, season to taste with salt and set aside.
Meanwhile, heat oil in a large skillet over medium-high heat. Add onion, carrots, asparagus and fennel; cook until soft, about 3 minutes. Add beef and cook until browned, breaking up the meat as it cooks, about 5 minutes. Add rosemary, thyme, ½ teaspoon dill, salt and pepper; stir to coat. Add broth and bring to a simmer; simmer until mixture thickens, about 3 minutes.
Transfer beef mixture to a rectangle pyrex dish. Spread mashed potatoes over top and using the back of a spoon. Bake until potatoes are slightly golden, about 20 minutes.