Let $C,C',D,D'$ be chain complexes of $R$-modules (let's say with upper indexing, so perhaps I should call them cochain complexes, though they're not duals of anything). Let $f\in Hom^\ast(C,C')$ and $g\in Hom^*(D,D')$. Then the standard convention is that $$(f\otimes g)(x\otimes y)=(-1)^{|g||x|}f(x)\otimes g(y),$$ where $|g|$ is the degree of $g$ and $|x|$ is the degree of $x$. As observed on page 171 of Dold, this is consistent with having a degree 0 chain map $$Hom^\ast(C,C')\otimes Hom^\ast(D,D')\to Hom^\ast(C\otimes C',D\otimes D').$$
What bothers me, though, is that this formula forces $$(h\otimes k)\circ(f\otimes g)=(-1)^{|k||f|}hf\otimes kg,$$ which seems to violate the definition of a bifunctor as given, for example, on page 17 of Kashiwara and Schapira's "Categories and Sheaves", which would seem to require (adapting the notation) $$(1_{C'}\otimes g)(f\otimes 1_D)=(f\otimes 1_{D'})(1_C\otimes g).$$ (Here I suppose we assume that the relevant categories are the category of chain complexes of $R$ modules with $Mor(X,Y)=Hom(X,Y)$ (certainly such things can be composed functorially and the identity behaves properly) and the products of this category with itself). If I'm reading it correctly, this requirement in Kashiwara-Schapira seems to be the same as what Mac Lane is asking for in Proposition II.3.1 of "Categories for the Working Mathematician".
So are we to believe $\otimes$ is not a functor or is there a way to reformulate all of this to be consistent (or am I just getting something wrong)?
Thanks in advance!