My Kentico 11 site's Default content culture and Visitor culture are both set to German. When I check under the settings tabs for the pages, I can see that their culture is also set to German. When I put a breakpoint in the debugger and check the value of LocalizationContext.CurrentCulture it also returns German.
I also have the following set in web.config:
<globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="de-DE" uiCulture="en-US" />
However, ResHelper.GetString only returns the english translation.
I'm guessing it's because somehow in localization module, english is still the default language:

If this is the issue how can I change this?
Update: I thought it might be related to this issue but Thread.CurrentThread.CurrentCulture is also returning de-De
Another Update:
ResHelper.GetString("Key", CMS.Localization.LocalizationContext.CurrentCulture.CultureCode); returns the German translation
Really good update:
Thanks to Brenden Kehren I've narrowed it down. When I call the function in a webpart like so there is no issue:
<%# CMS.Helpers.ResHelper.GetString("key") %>
But when I call it in a webservice this is where the issue comes from!