I'm not quite sure what your question is, but that is correct.
If a card is a part of a bundle, it makes sense that the entire bundle would have to share the pinned or unpinned status. It doesn't make sense to have just one card of a bundle pinned with the rest unpinned - since bundles are all displayed together, it would make for a confusing state.
If you want to be able to display just one card from a bundle in the pinned area, taking it out of the bundle, you can do just that. When your server gets the notification update that the item is pinned, you can issue a timeline.patch instruction on that item to remove it from the bundle, or perhaps to assign it to a new bundle where all of the members are pinned. When they unpin it, you can do the reverse and assign it back to the original bundle again.
Update:
While many times bundles do map directly to the logical representation in other systems (for example - a bundle maps nicely to an email thread or text conversation with someone), it is fundamentally a construct for Glass to group things and does not need to map to something else. For example, Glassware that posts news may use a bundle to group stories that are related simply by time they're released and not have any topical relation.
So while I can see how this might be viewed as a hack by you because you're using bundles to logically group things - Glass treats it as a setting for how things must be visually arranged. Since pinning is also an instruction for visual arrangement, one of them must take priority over the other. You may disagree with the choice made, but this seems very much by design. From the Glass point of view, it does not make sense to say to group cards together on one hand, but also not group them together.