It's been a while, but you probably need to make the cluster NOT be "relative". If it's relative, the components will only updated based on the data applied directly to transformation channels of the cluster handle. Since it's parented, the translate attrs aren't changing (for example), so no motion is transfered to the custer components. If it's not relative, then any transformations (parenting, or otherwise) will affect the cluster. If for some reason you really need to leave the cluster relative, then you could try a parent constraint instead.
Finally, I moved away from clusters years ago, and just use joints (and smooth binding) for everything. There are more tools for dealing with joints and smooth binds (mirroring, copying, etc), and clusters and give one a headache from time to time. Just my 2c.