Understanding rows count computation
Since it was not in most_common_vals, PostgreSQL then looks in the histogram.  If there is no histogram, it would conclude the most common values are the only values present in the table, and therefore the estimate for 123123 is zero.  But it doesn't allow zero estimates in most places, to prevent div by zero error, and instead clamps it at 1.

0.5% is for cases where there is no information, like for a generic query plan or a join where the value won't be known at planning time.  

But having a list of MCV and the one you want not being present in that list and there being no histogram to fallback on does constitute information.