As the others have mentioned, the validity of a chord progression is entirely subjective and should essentially be determined by whether or not it sounds good and fulfills your musical needs. I always like to remind people that music theory is not so much a set of rules, as many are often taught, but an explanation of what is happening and a language to discuss it. Theory is basically only rules when you are trying to authentically imitate a specific style, so you will actually find that there are different "rules" in this regard for different genres. There are a few things that I would mention to look for while choosing substitutions though.
The idea of substitution, at least in the traditional sense, is that different chords fulfill a function within your composition and that you can choose other chords that will fulfill the same or a similar function. This is most easily demonstrated with the tritone substitution from your example. The idea here is that the 3 and 7 of the chords are shared, which are the primary notes driving the function of the chord. With these notes in common, the two chords can fulfill the same function but there are differences between these chords, one of which being texture.
When choosing a substitution, it's important to pay attention to what the melody and other important parts of the arrangement are doing. The common tones between two chords may not be enough to justify a substitution. For instance, if you were to choose to substitute iii for I, then you will want to pay attention to whether or not the tonic is in the melody since that is the one note that is not shared between the two chords. The 5 of the iii chord is ^7 (scale degree 7), a half-step below the tonic, so if the melody lands on the tonic during the iii chord, it can cause a lot of tension, possibly beyond what you may deem appropriate or would be considered appropriate for a given genre/style.
Similarly, you can look at the tritone substitution (which I'll call "TT" moving forward) and find that certain notes may cause issues like this. 5 of the TT is ^b6, so if you have ^6 in your melody, you will have a half-step dissonance that may cause issues. Same with 2 of the TT being ^#2 (b3), which could conflict with ^2 or ^3, or 6 of TT being ^#6 (b7) and conflicting with ^6. You also want to mind the 4 of TT, which would usually be replaced with #4, which is ^5. In a Jazz setting, this is often resolved by using an Altered Dominant chord, which would include all the notes from the major scale except the tonic, which isn't usually a melodic note on a dominant chord. The notes of an Altered Dominant in C Major, starting on b2 would be Db (1), D (b9), E(#9), F(3), G(#11), A(#5/b13, depending on who you ask), and B(7), though Jazzers would often spell it enharmonically to line up with the chord tones described in parentheses above (Db, Ebb, E, F, G, A or Bbb (depending on who you ask), Cb). This allows you to use a TT for just about any diatonic melody that appears over a V7 chord without creating major conflicts with the melody, however, it is still a different chord and one that is rather dissonant, so it should be used with care outside of its standard Jazz setting (or even in Jazz).
On the whole, like with all theory, you should be using your ears more than subscribing to some rules. If you follow the rules, you may end up with something that you don't like the sound of but is "right" by academic standards, while breaking those rules intentionally could make you the next Stravinsky. Play something and if it sounds good, try to figure out why it made sense to break those rules and try to find a way to describe it within the framework of theory.