The explanation of http://brainstellar.com/puzzles/30 is correct - The original text in their solution was:
Plot the graph of X and Y, where X and Y denote the time each witch arrives. This will form a 60x60 square for total feasible region. The probability that they meet is |X-Y|<= 30. Draw this as favorable region, by joining line (30,0) with (60,30) and (0,30) with (30,60). Clearly the interior of this region has area 3/4 th of total. Hence the probability = 3/4 = 0.75
here it is visually:
(the favoured region is the one with 2 hats in it)
The other answer you referenced made basically the following argument:
If Witch 1 arrives after 0 minutes, the other witch can either arrive within 30 minutes (meet) or after 30 minutes (don't meet). These chances are equal (P = 0.5). All other times will have the same probability, so the answer is 0.5.
But if you look at the graph
then you can see that
witch 1 arriving at 0 is not typical, but is pretty much the worst case (red line). The best case for witch 1 is arriving after 30 minutes, giving P=1. But it is not enough to look at any single witch 1 arrival, you need to consider them all, which can be done by looking at the area.