What a great question!
Here is my solution. I am aiming for a black circle inscribed on a
white face (where the boundary edge points are invisible,
as mentioned in the comments).
Pick one of the white faces to be the desired final face F.
Now, consider any given horizontal row on that face, which
is all white. We want to add two black dots to such a row (except for top/bottom/center, which are handled already by the edge point color condition). These rows come in upper/lower symmetric dual
pairs. Call such a pair the
current working pair of rows. We make a quarter turn to
each of these working rows to the side. Now, operating on
that side face S, we make two moves parallel to F, which
will not upset F, in order to make the working rows on S
have exactly two black dots each in the correct positions.
This is possible since the squares containing the working
rows have not been moved previously, and the corresponding
columns containing the desired black dots have also not
been moved previously, since those dots will only be moved
for this pair of working rows. That is, it is precisely the
black dot opposite the dual white dot that we desire, and
by working in dual pairs, we put all four black dots into
position with two moves. (Is it clear?) Thus, on the side
face, we have the two working rows looking exactly like we
want. So we turn them each a quarter turn back to the main
face F, and proceed with another pair of working rows. The
center row and top/bottom rows do not need adjusting,
because of the invisible edge points. So this seems to do
it!
That said, there are problematic issues in setting up your
problem. This kind of problem, where one wants to describe
a task involving infinitely many steps, is known as a
supertask, and is
open to a number of interesting paradoxes and problematic
issue, some of which I describe in this MathOverflow
answer.
In this problem, we can imagine carrying out my solution in
a transfinite sequence of moves. The fact that each row on the desired face is
handled with finitely many moves makes my particular
solution less problematic than other situations one can
imagine. In general, for example, if a square has been
moved infinitely many times, what position is it in at the
limit? You haven't said, and it isn't clear what it should
be. But solutions in which every given square is moved only
finitely often seem to avoid this problem, particularly when the order that the finite sequences of moves are made in doesn't matter.
Edit. I notice now that you didn't say that the diameter of the circle should be the same as the diameter of the square. You can easily modify my solution for any size circle on any face. In this case, you do have to handle the top/bottom/middle rows of the circle, but this is no problem and is handled the same as the other rows. The top/bottom rows of the circle form a dual pair of working rows just like the others, and the center row has no dual, and is handled by itself.