I have a test project that test the Inherit contracts and callback contract.
Update 1 : I updated all of the topic with interfaces implamantations
By reading this article: http://codeidol.com/csharp/wcf/Service-Contracts/Contract-Inheritance/#part-16
This is possibol but when i try it, it fails.
class Program
    {
        static void Main(string[] args)
        {
            ServiceHost Service_IServer = new ServiceHost(new ServiceImplemantation(), new Uri(@"net.tcp://localhost:8080/"));
            Service_IServer.AddServiceEndpoint(typeof(IService), new NetTcpBinding(), "Service");
            Service_IServer.Open();
            ServiceHost Service_I_IP = new ServiceHost(new IPImplemantation(), new Uri(@"net.tcp://localhost:8080/"));
            Service_I_IP.AddServiceEndpoint(typeof(I_IP), new NetTcpBinding(), "Service");
            Service_I_IP.Open();
            Console.ReadLine();
        }
    }
    [ServiceContract]
    public interface I_IP
    {
        [OperationContract]
        string GetIP();
    }
    [ServiceContract]
    public interface IService : I_IP
    {
        [OperationContract]
        void ImTheServer_Print();
    }
    //
    //
    //
    //
    [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
    public class IPImplemantation : I_IP
    {
        public string GetIP()
        {
            return "1.2.3.4";
        }
    }
    [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
    public class ServiceImplemantation : IPImplemantation, IService
    {
        public void ImTheServer_Print()
        {
            Console.WriteLine("ImTheServer_Print");
        }
    }
The error:
The ChannelDispatcher at 'net.tcp://localhost:8080/Service' with contract(s) '"I_IP"' is unable to open its IChannelListener.