Why is this rail signal not creating a new block?

Solution 1:

In general, any place train tracks cross — and thus could cause trains to collide — is always one block. Your signal is flashing because the track ahead of it and the track behind it are forced to be the same block by the crossing — it is unable to do its job of splitting one block into two. (You'd get the same flashing if you put exactly one signal on a single loop of track.)

If you put a second signal on the vertical track, just above the crossing, then you will successfully split the track into two blocks: one containing the crossing and the other containing the rest of the loop.

However, it is probably a better idea to not put any signals within the loop at all, because it really isn't long enough for multiple trains to usefully occupy. Instead, just move your signal that's to the right of the crossing to the left of the crossing. That way, a train at the station will occupy a block consisting of all of the track that it's obstructing anyway.

Proposed new signal locations

I also suggest you remove the signal just below the crossing. Instead, place a chain signal at the beginning of the station, behind the mine loading — the place where the rear of the train will sit while it's loading. This way, there's one block for the extent of the station-when-in-use.