Try this:
kernel.Bind<MyClass>().ToSelf().InSingletonScope();
kernel.BindInterfaceToBinding<IA, MyClass>();
kernel.BindInterfaceToBinding<IB, MyClass>();
This results in a "single" binding creating objects, thus only one
single instance of 'MyClass'.
The BindInterfaceToBinding extension method can be found in the
Ninject extension "ContextPreservation".
Cheers
Urs