As with everything else in software development (and particularly architecture), there's not a single, correct answer to those questions. It depends upon the architectural goals and constraints.
WCF works with DTOs. While it's possible to drop down to a more primitive layer and work directly with messages, for all practical concerns, DTOs are a fundamental part of working with WCF. Since WCF seems to be one of the architectural constraints in this case, there's really no practical way to avoid DTOs.
The question then becomes: should there be a mapping layer or not?
That question is fairly easy to answer if we can answer another question: mapping from what?
If you already have an existing system, you'd need to translate between the existing system and the WCF boundary. In such a case, a translation layer is required.
If you are building a completely new system, perhaps it'll be easier not to translate.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…