In Kochen-Specker's theorem, as presented e.g. in (Rajan 2017) or (Breuer 2002), we consider maps $\nu:\mathrm{Herm}(\mathcal H)\to\mathbb R$ that are algebra homomorphisms on compatible observables, that is, such that $\nu(AB)=\nu(A)\nu(B)$ and $\nu(A+B)=\nu(A)+\nu(B)$ whenever $[A,B]=0$. Among other things, this implies that $\nu(P)\in\{0,1\}$ for any projection operator $P$, that $\nu(I)=1$, and more generally that $\nu(A)\in\sigma(A)$ for any $A\in\mathrm{Herm}(\mathcal H)$, where $\sigma(A)$ denotes the spectrum of $A$.
In the context of Gleason's theorem, as presented e.g. in (Busch 1999), one considers frame functions, which are functions $f:\mathrm{Eff}(\mathcal H)\to[0,1]$ such that $\sum_k f(E_k)=1$ whenever $\{E_k\}_k\subset\mathrm{Eff}(\mathcal H)$ satisfies $\sum_k E_k=I$. Here, $\mathrm{Eff}(\mathcal H)\subset\mathrm{Pos}(\mathcal H)$ is the set of effects, that is, of positive operators $E$ such that $0\le E\le I$. The gist of Gleason's theorem is that frame functions extend uniquely to linear functionals $\mathrm{Lin}(\mathcal H)\to\mathbb C$, which are in bijection with quantum states via the standard isomorphism $\mathrm{Lin}(\mathcal H)^*\simeq \mathrm{Lin}(\mathcal H)$.
For the scope of this post, let me refer to the functions $\nu$ in Kochen-Specker's theorem as noncontextual assignments.
It seems clear that there are strong relations between noncontextual assignments and frame functions. Indeed, one can also easily see that any frame function satisfies $\sum_k f(P_k)=1$ for any complete set of orthogonal projections $\{P_k\}$, which is a property shared with noncontextual assignments.
One major difference between the two is that noncontextual assignments are also required to preserve multiplication on compatible observables. This implies that we have, for any projection $P$, $\nu(P)\in\{0,1\}$, whereas frame functions need only satisfy $f(P)\in[0,1]$.
Is this the only difference between noncontextual assignments and frame functions, or am I missing something? Does this mean that one can think of noncontextual assignments as a subset of frame functions? But if this is the case, why doesn't Kochen-Specker's theorem follow directly from Gleason's one?
Gleason's theorem characterises the set of frame functions. It tells us that any frame function $f$ has the form $f(A)=\mathrm{Tr}(\rho_f A)$ for some $\rho_f\in\mathrm{Herm}(\mathcal H)$. But such an $f$ clearly isn't "sharp" in the sense of Kochen-Specker: if $f(P)=1$ for some projection $P$, then $\rho_f=P$, and thus $f(Q)\notin\{0,1\}$ for some other projection $Q$, hence $f$ not being a noncontextual assignment.
Is this argument valid, or am I missing something?