Здесь есть еще одна возможность. Когда я запускаю в пользовательском компоненте WCF SharePoint в IIS на своем компьютере разработчика, который находится в рабочей группе, то SPServiceContext.Current всегда имеет значение null.
Тот же код, работающий на сервере домена, работает нормально.
На самом деле это большая проблема, так как это означает, что подрядчики (например) должны развиваться как часть домена, который на путешествующем ноутбуке нетривиален.