Preheat oven to 400 degrees F. Slice the acorn squash in half lengthwise and remove the seeds and guts–place cut side up on a large baking sheet, drizzle with 1-2 tablespoons of olive oil and season with salt and pepper.
Slice the sweet potatoes in half lengthwise, drizzle and rub the cut side with olive oil and season with salt and pepper. Place cut side down on the baking sheet along with the acorn squash.
Roast for 45 minutes to an hour, or until both the potato and acorn squash are fork tender and very soft. Remove from oven and when cool enough to handle, remove the squash and sweet potato flesh from their skin and set aside in a large bowl. Discard the skin.
Meanwhile, heat the remaining tablespoon of olive oil in medium-sized soup pot. Add the onion and sauté over low heat until soft and completely translucent.
Add the ground ginger and garam masala and cook for an additional minute or two, stirring constantly, until fragrant. Add the vegetable broth, roasted squash, and sweet potato. Bring to low simmer, cover, and cook for an additional for 10-15 minutes.
Puree in a blender (in batches, if necessary) and return to heat.
Add the coconut milk and stir until well combined. Season with salt and pepper to taste (at this point, it is optional to add an additional pinch of ginger or garam masala, if desired).
Serve hot and drizzle with a spoonful of coconut milk and touch of extra virgin olive oil.