Once we understand some basics about the formation and location of
iron ores, we can decide on an algorithm to place them.
To aid in thinking through the various prerequisites, I've begun development on charts for each one. Solid arrows mean that the condition is absolutely required. A dashed line means that it is not required, but it does improve the chance of discovery, as a modification to the chance.
Base chances will be loosely based on
this chart, at least for minerals. Iron comprises about 6.3% of the crust. If I model the frequency of each ore as obeying a power law, I can use that information to figure out my base chance for each type. Hematite is the most common type by far, at least in the modern world, at
96% of all exports. That gives us the following equations, where $k$ is the power law factor, and $H$, $M = k H$, $G = k M$, and $L = k G$ represent hematite, magnetite, goethite, and limonite.
\[H + k H + k^2 H + k^3 H = H (1 + k + k^2 + k^3) = 6.3\%\]
\[{H \over H (1 + k + k^2 + k^3)} = {1 \over 1 + k + k^2 + k^3} = 96\%\]
The solution is left as an exercise to the reader. In any case, we end up with the following base chances to find our ores: $H = 6.048\%$, $M = 0.242\%$, $G = 0.00968\%$, $L = 0.000387\%$. $k$ turns out to be 4%.
Now, these numbers are ignorant of the strictures we'd like to place. To do that, we need to know the chance that we'll actually be in an acceptable location. For example, goethite is only found in bogs, with no other strictures. The current iteration of the map has 5676 bogs, out of a possible 108132 hexes. Therefore, the chance that our dart hits a bog is only ${5676 \over 108132} = 0.052\%$. If we want to accurately distribute the goethite among them, that means that ${0.00968 \over 0.052} = 18.4\%$ of bogs will contain enough goethite to count as a resource.

Goethite bogs are concentrated in areas with heavy rainfall (the equator) and ares with poor drainage (the antarctic) 
Alternatively, we could loop over the available hexes until the
base chance has been reached (for goethite, that's $\sim$1045 hexes). However, that starts to increase the complexity of the placement algorithm, from $O(n)$ to something more like $O(n \cdot m^k)$. No thanks, if I can help it.
This analysis should be repeated for each resource, so that reasonably accurate numbers can be collected. Ultimately, it's enough to say that it mostly makes sense  the inherent error in these processes will serve as randomizing salt.
This set of resources is also fairly simple (goethite especially, with its single requirement). Later, I may encounter cases where there is more than one possible set of requirements. The work never ends.