Can someone explain this? Have the songs been temporarily downloaded (cached), and I can expect them to disappear at some point, or is this really a bug?
Yes, this is exactly what is happening. The "streaming" on iOS devices is not exactly what we are used to when we think of streaming music. The track is actually cached in non-permanent storage and as space is needed the cache is cleared out starting with the oldest, least listened to tracks. The cache will also be cleared out if iTM is disabled then re-enabled.