Inside the "initget" you use "Screening_50.ctb Fill_Patterns.ctb" with "_", and inside the "getkword" you use "Screening 50%.ctb/Fill Patterns.ctb", which is not equal as it in "initget". Everything must be equal. So, according from your's "initget", the "_" can't be in use, because it's in use for localization (for eg. "_RECTANG", "_LINE", etc.). From this link you can find this:
Keyword Specifications
The string argument is interpreted according to the following rules:
1. Each keyword is separated from the following keyword by one or more spaces. For example, "Width Height Depth" defines three keywords.
2. Each keyword can contain only letters, numbers, and hyphens (-).
One of the possible solutions is to use this:
(initget 1 "Monochrome.ctb acad.ctb Grayscale.ctb Screening50.ctb FillPatterns.ctb")
(setq plotstyle (getkword "\nChoose plot style [Monochrome.ctb/acad.ctb/Grayscale.ctb/Screening50.ctb/FillPatterns.ctb] <Monochrome.ctb>:"))
(cond
((equal plotstyle "Screening50.ctb")
(setq plotstyle "Screening_50.ctb")
)
((equal plotstyle "FillPatterns.ctb")
(setq plotstyle "Fill_Patterns.ctb")
)
)
Best regards.