Preheat the oven to 300. Remove the meat from the bones and sprinkle with Cajun/Creole seasoning. Reserve the bones for broth. Heat ghee in Dutch oven over medium high heat. Without crowding pan, brown meat in batches, about 7-8 minutes, tuning meat over halfway through. Remove the browned beef and set aside.
Reduce the heat to medium and add diced onion. Sauté, stirring constantly for 4-5 minutes. Add celery and pepper, continuing to cook for another 5 minutes or until vegetables are soft, but not browned.
Add tomato paste and cook until the bright red color becomes reddish brown. Add garlic and cook for 30 seconds or until fragrant. Add reserved meat and stir. Add red wine and broth, stirring until ingredients are combined. Add enough water to nearly submerge the meat, but allowing the top of the meat to remain out of the liquid. Bring to a boil and then turn off the heat.
Cover and put in the oven. Cook for three hours. After an hour or so, check to see if it is bubbling vigorously, if so, lower temperature to 250 for the remainder of the cooking time.
Remove from oven. If desired, allow meat to cool and refrigerate.* If continuing without cooling, remove meat from cooking liquid and reserve. With a slotted spoon, remove vegetables to a bowl separate from the meat and reserve.
During the last half hour, cook sweet potatoes and asparagus.
Pour liquid into a fat-separator and allow to settle for 5 minutes. Pour liquid (but not fat) back into the Dutch oven. Add cooked vegetables and with an immersion blender, puree until all vegetables are smooth. Taste the gravy for seasoning, adding salt and pepper to taste. Add meat back to pot and rewarm.
*If refrigerating before continuing on, remove congealed fat and remove the meat and set it aside. Heat the vegetables and liquid in a Dutch oven to a simmer. With an immersion blender, puree vegetables until smooth. Add the meat to the gravy and simmer until meat is completely warmed through. Taste for seasoning and add salt and pepper, if desired.
FOR THE SWEET POTATOES:
Place all the ingredients in a sauce pan over medium heat. Stir occasionally until sweet potatoes are tender, 15-20 minutes. Mash, taste for seasoning and serve.
FOR THE ASPARAGUS:
Heat a ridged grill pan or skillet over medium high heat. Add asparagus and cook, tossing every few minutes until slightly charred. Reduce heat to medium and continue cooking until desired tenderness is reached. Add butter and season.
Melt butter in Dutch oven or large saucepan. Add onion and sauté without browning about 5 minutes. Add celery and sauté 5 minutes. Add ginger and bay leaves and sweet potatoes. Sauté for 5 minutes. Add water, stir to combine, cover, bring to a boil, reduce heat to a simmer, cover and let cook 20 minutes.
Check sweet potatoes for doneness. They should be tender and mash easily. Remove bay leaves and using an immersion blender, purée. You can also purée in batches in a blender or food processer. Or you can use a potato masher if you prefer a chunkier texture.
Add heavy cream or coconut milk, stirring to combine and heating for a minute or two. At this point you can cool to room temperature if serving later and refrigerate. Reheat over medium heat. Ladle into serving dishes, squeeze lemon juice on each serving, garnish with lemon slices and serve.