Apologies, I may have misunderstood how properties and attributes work. I played around with it some more and I think I figured out what I was doing wrong.
If there's any further confusion about contraption implementation, feel free to open a thread in the community forum!