I use a local rock or rocks put into a mesh bag with handles and a drawstring.
I have developed a system that works really well for me. The system allows me to use rocks that are amost always available wherever I go fishing. I just return the rocks to their original location after I'm done fishing. It allows the anchor to pull from the end of the canoe and it allows me to easily retrieve the anchor. I usually fish from a solo canoe but this could easily be modified for a tandem canoe.
I'll try to explain the how it works. I think its best to do the initial set-up on dry land. Put your canoe rightside up on your lawn. Tie your anchor rope to the two handles of the mesh bag. Decide how much anchor rope you will need and string the rope and bag out from the stern of your canoe. Tie the other end to your grab loop, or stern thwart or whatever you have. Now for the tricky part - pick up the anchor rope in the middle (approximately) and walk that up to the seat beside where you will be sitting (whether solo or tandem). Allow a couple of feet extra then mark the anchor rope where it came up to your seat.

Tie an alpine butterfly or similar knot on the anchor rope where it comes up to the seat. Now, pull the anchor rope straight out behind the canoe. Tie another rope to your seat and pull it out parallel to the anchor rope and up to your Alpine Butterfly. Allow a bit extra for knots.

Fill up the mesh bag when you get to the lake. Tie the anchor rope to your canoe. Tie the extra rope to your seat. Put the mesh bag with rocks just behind your seat. When you want to anchor, drop the mesh bag over the side and the canoe will straighten out downwind or down current from the bag. When you want to move, pull on the rope that's tied to your seat and when you get to the anchor rope, pull it up.
Simple and cheap and effective for me. Hope it helps someone.
I think I might have another career as an artist!!!