In addition to complaints about a lack of peer-reviewed publications, one of the frequent complaints and/or sources of misunderstanding regarding the arguments of Richard Dawkins is his use of the word "gene". Much like his use of the "God" in "The God Delusion", Dawkins has a specific meaning for "gene" in "The Selfish Gene" and the gene-centred view of evolution. Just as many of the objections levelled at "The God Delusion" ignore (or are ignorant of) his definition of "God", many of the objections levelled at gene-centric evolution ignore (or are ignorant of) his definition of "gene". So, what is a Gene? And why is there so much confusion?
Part of the problem is that gene means different things to different people and I think that this can be traced right back to the word's origins. The term "gene" was coined by Wilhelm Johannsen in 1909 as "special conditions, foundations and determiners which are present [in the gametes] in unique, separate and thereby independent ways [by which] many characteristics of the organism are specified” [quote taken from "What is a gene, post-ENCODE? History and updated definition" (Gerstein et al. 2007)], which has subsequently been paraphrased by others as "the fundamental physical and functional units of heredity". The problem, I think, stems from physical and functional.
Physical is fairly obvious and we now know that DNA is the genetic molecule of heredity. Molecular biologists and biochemists tend to fixate on this aspect of the "gene". A gene is a specific locus of the DNA that encodes a particular function. Even here, there is much debate and confusion over what constitutes a gene, which is unfortunately (and perhaps ironically) fuelled by a tendency for lower level biology textbooks to only talk about protein-coding genes to the extent that First Year undergrads seem to insert a silent (and invisible) "protein-coding" in front of "gene" whenever they see it or use it. Many genes do not encode proteins and a strong case could be made that things we frequently call "genes" are not fundamental units of heredity due to recombination etc. (See Gerstein et al. 2007 for more on this aspect of the problem.) The reason we have the words "cistron", "locus", "allele" etc. is because "gene" does not do well as a catch-all term for all situations. Although important, it is not the physical aspect I want to focus on, though.
Functional is not so simple due to the gene's (unique?) status as an information-carrying replicator - the essence of The Selfish Gene. Both the physical copy and the information contained by it can (rightly) be described as "the gene" depending on the situation. In terms of evolution rather than molecular biology, the emphasis is clearly on the information and not the physical molecule. It is this latter carrier of information that evolutionary biologists (including Richard Dawkins) are generally referring to with the term "gene". (Explicitly, Dawkins uses definition of George Williams, whose ideas formed the basis of The Selfish gene, as "that which segregates and recombines with appreciable frequency.") There just happens to be a lot more molecular biologists than evolutionary biologists in the world (including a subset with an explicit objective to erode the importance of the gene as a driver of evolutionary change and adaptation - a physical gene does not challenge Creationism in the same way that a heritable unit of information does.) The biochemist's physical definition might be winning the war for popular definition but this other term is still a common meaning if you think for a moment of the meaning of the phrase "gene pool", which is still used quite frequently.
The problem with the word "gene" is the same problem that always arises when we have a word for a useful concept that translates poorly into the real world as a set of explicit and consistent rules. "Gene" is a bit fuzzy because the physical reality of a fundamental unit of functional importance is context-dependent and hard to define, as is the functional reality of a fundamental unit of heredity.
The best solution, in my opinion: (1) unless it is blatantly obvious, make it clear what definition of "gene" you are using when making an argument on which it depends, and (2) be damn sure that you know what definition someone else is using before you start attacking their arguments. Semantics is a killer that isn't going to go away.