Of course you don't see how you can generate a set of animals using the axioms of $\sf ZFC$.
You can only generate sets using the axioms of $\sf ZFC$ and animals are not sets, they are not even mathematical objects that we can collect into a set. This is a bad example, and I have often said that using these sort of real world analogies can destroy a student's intuition if not done carefully. It's better to help the student understand that lack of understanding (and intuition) is a byproduct of learning something new, but as luck would have it, in mathematics we have definitions we can work with closely until we can develop that understanding and intuition.
Now let me tend to your mathematical question.
If you have a collection which is definable by a first-order formula (perhaps with parameters), and you can prove that this collection can be enumerated by an ordinal (or any set really) then using the axiom schema of replacement, your collection is a set.
Of course, this is not always the case. Suppose that you have a countable model of $\sf ZFC$, then the number of sets in that model is countable, so it certainly can be counted by an ordinal. However that doesn't mean that the model itself is an element of itself. The reason is that you can't define that enumeration by a first-order formula. If it were, then we can prove various contradictions from $\sf ZFC$, and therefore if $\sf ZFC$ is consistent it cannot be defined (if $\sf ZFC$ is inconsistent, then we don't care about that anymore).
So how do we prove that sets exist? Well, we show that they can be constructed from our axioms. What axioms do we have for constructing sets? We have power set, union, replacement and separation. (Separation follows from replacement, but it is often useful to take a slightly weakened form of replacement and add separation nonetheless.)
But you want to talk about the sets of sheep and black animals. What does that mean? Well, it means that you have a language (as in logic) with a predicate for "Animals" and "Sheep" and for "Black things", and you take an interpretation of that language as a structure, and you ask for the definable subset of the universe which is the intersection of these three predicates.
That is fine, now we have a mathematical notion of being a black sheep, grazing in the infernal planes of Banach-Tarski.
How do we actually do it, then? Recall the definition of a language, it's just a set of symbols (relation symbols, function symbols, etc.). Then we have a definition by recursion of what makes a well-formed formula. Next, recall the definition of an interpretation for a language, it means we take a set and we interpret the relations and the functions and so on, to be relations and functions on that particular set.
Then we have a truth predicate, telling us what is true and what is not true for particular formula and assignment into our structure. And that is also defined by recursion.
We can do all that internally within $\sf ZFC$. We can model first-order logic in sets. And then we can decide what is true and what is not for set interpretations, structures as we have called them. All internally to $\sf ZFC$.
So given the interpretation of the animals in the field some set $A$, we can ask which animals satisfy the interpretation for the predicates "Sheep" and "Black". In return this defines a subset of $A$ which is definable using a first-order formula (with parameters for what is the language, and what is the interpretation function).
So this is a subcollection of $A$ definable by a first-order formula in the language of set theory. Therefore by the schema of separation, it's a set.