Some thoughts. In
OrderRepository[
^] you instantiate the OrderServiceContract, so that will hit the default constructor. However, OrderServiceContract has a parameterised constructor which accepts the DbContext; you need that to hit your DbSet (Orders).
The calls that I have looked at appear to be synchronous. Do you really want all your database access to be synchronous, or would you rather use async/await with the appropriate EF extensions?
The only time I've seen people using Impl at the name of a class is in Java. The common C# convention is to name the interface ISomething, and the implementation is the same without the I at the start (e.g. Something).
On the subject of interfaces. Do you really need an interface? I know that it's something we see in C# examples but, in most cases, interfaces are unnecessary. There are, generally, other ways to accomplish what you see in the interface. Interestingly, you don't even need an interface to register a class in for dependency injection.