Preheat the oven to 350F. Inspect your coconut, and select one of the three eyes to pierce with a skewer (one of the eyes will be soft). Completely drain the coconut water into a bowl, and set aside. Place the whole coconut in the oven for 20 to 30 minutes. The coconut should crack while baking.
Remove the coconut from the oven, and allow to cool. Pry the coconut open with a large spoon. The coconut meat should have pulled away from the shell, and pry out easily. For safety, always use a spoon and not a knife to remove the coconut meat.
With a sharp paring knife, shave off the tough brown outer skin of the coconut meat. Discard the coconut shell and brown skin. Chop the white coconut meat into 1/2-inch pieces.
Put the chopped coconut in a blender, along with the milk. Blend until the coconut is roughly pureed, about 2 minutes. Pour into a 2-quart saucepan, and add the shrimp shells. Heat until the milk almost boils, and then lower the heat and simmer for 10 minutes, stirring so that the milk doesn’t scorch. Remove from the heat, and pour through a strainer to remove the coconut pulp and shrimp shells. Set the milk broth aside to cool, but discard the coconut pulp and shrimp shells.
Heat the olive oil in a 2-quart saucepan. Add the onion and sauté for 1 minute. Add the cornstarch, and stir once or twice so that it absorbs all of the olive oil. Add the strained milk, reserved coconut water, shrimp, cream and stock. Season with salt and pepper, and simmer until slightly thickened, about 5 minutes. Garnish with chopped parsley.